목록Android (13)
Dharma
Android Studio를 OSX(내 경우에는 Yosemite 나 El Capitan 버젼) 에 설치하다 보면 발생하는 에러가 다음과 같다. 종종 발생하는데 해결하는 방법은 쉽다. $ export STUDIO_JDK=/Library/Java/JavaVirtualMachines/jdk1.7.0_xx.jdk $ open /Applications/Android\ Studio.app 위에서 xx 는 자신의 버젼에 맞게 쓰여져야 한다. 참고로 내꺼는 25 ("jdk1.7.0_25.jdk")이다. 안전하게 .bash_profile 에 STUDIO_JDK 값을 지정해주는 것이 좋다.
저는 습관처럼 gradle 을 command line 에서 사용합니다. 다만 최근 무지하게 느려진 느낌입니다. 자성의 움직임이 있었는지 최근 gradle 도 daemon 모드를 말하는 군요. 세팅은 무지하게 쉽습니다. touch ~/.gradle/gradle.properties && echo "org.gradle.daemon=true" >> ~/.gradle/gradle.properties 이렇게만 하면 비약적으로 빌드 속도가 올라간다는데 저는 사실 잘 모르겠습니다. -ㅅ- Android Studio 도 빨라지는지는 테스트 해봐야 할 듯합니다.
안드로이드 어플리케이션 개발시 strings.xml 에 html tag 를 삽입할려고 하다 보니 ADT 와 안드로이드 스튜디오 와 호환성 문제가 발생하더군요. 1 현상 메모CDATA[ ]]> %1$s 위와 같이 html tag 를 strings.xml 에서 사용할때 공백문자를 사용하기 위해서 CDATA 태그를 조금이라도 적게 사용할려고 공백 문자에만 사용할려고 하다가 발생했습니다. 2 원인 ]]> 태그가 마지막에 오지 않으면 발생한다는 에러가 발생합니다. 혹은 리소스 머지(merge) 시에 에러가 발생한다던가 , 잘 쓰고 있던 컴퍼넌트 (component) 가 없다는 등 종잡을 수 없는 에러가 발생합니다. 3 해결 CDATA[메모 %1$s]]> 위와 같이 변경해 주면 해결됩니다. 공백은 단순히 CDATA..
parseSdkContent failed Could not initialize class android.graphics.Typeface 정확히는 위와같이 발생합니다. 그래서 다른 프로젝트를 가져와서 막상 실행시킬려고 하면 에러가 발생하는데 OSX 에서는 $HOME/.android 폴더를 강제로 지워주고 다시 시작하니까 문제 없이 동작합니다.
Android NDK (Native Development Kit) 을 이용해서 개발하고 있습니다. NativeActivity 를 이용하고 있습니다. 그런데 작지만 해결하기 어려운 버그가 있습니다. NativeActivity 는 Java 의 Activity 의 일종인데 JNI 를 이용한 Native C/C++ Entry Point 를 쓰레드 (Thread)를 이용해서 호출하는 부분을 잘 감싸서 NDK 를 이용해서 개발하고자 하는 사람들에게 편의를 제공할려는 목적으로 만들어 진것으로 보입니다. 특히나 게임 , 전화, 멀티미디어 용 어플리케이션을 개발하는 사람들은 필히 관심을 가져볼 만합니다. 발생한 이슈는 제가 추천한 책에서 언급된 소스에 다른 모듈을 붙일려고 하는 순간에 발생했습니다. 참고로 만들어본 An..
저는 컴퓨터 관련 서적 자체를 잘 추천 안하는 편입니다. 요즘 같이 급박하게 기술이 바뀌는 세상에서는 사실상 공식 페이지가 최고의 레퍼런스가 되는 것이 현실이다 보니, 주변에서 기술 관련 서적을 산다고 하면 적극적으로 말리는 편입니다. 그러나 이 책은 정말 감히 추천할 만 합니다. 사실 저는 원서(Android NDK , Beginner's Guide)로 봤는데, 저자의 소스코드만 보더라도 상당한 내공이 느껴집니다. C++ 이나 Object Oriented Programming 에 상당한 조예가 느껴집니다. 팀원이 한글판으로 보고 있는데도 상당히 괜찮다고 하니 번역도 괜찮게 되어 있는 편인가 봅니다. 안드로이드에서 가장 어려운 축에 드는 NDK(Native Development Kit) 부분을 '따라하기..
저는 안드로이드를 Emacs 로 개발하고 있는 중인데요. 외부 jar 가 추가 될 때 자동으로 classpath 에 추가 하고 자동으로 import 기능을 활성화 시키는 방안을 찾는 중인데, 없더군요.. 물론 Eclipse 를 사용하면서 Google AdMob SDK 같은 외부 jar를 사용하기는 쉽습니다. 외부 라이브러리로 추가해 주면 끝이기 때문입니다. 다만 CLI (Command Line Interface) 에서 Ant 를 이용해서 빌드를 할 때는 마구 마구 귀찮아집니다. 하지만 쉽게 하는 방법이 생겼더군요. $(ANDROID_PROJECT_ROOT) 밑에 /libs 라는 디렉토리를 만들고 그 안에다가 GoogleAdMobAdsSdk-6.0.1.jar android-support-v4.jar 두개의..
필요에 따라서 Eclipse 최신 버젼에 (Kepler) ADT 플러그인을 설치해서 사용중입니다. 이유는 간단합니다. 서버와 클라이언트를 동시에 개발할 일이 생겨서 그렇습니다. J2EE 와 ADT 를 따로 따로 설정해주는 방법도 있지만, 그 무겁고 귀찮은 Eclipse 를 두개나 깔아서 쓰라니요 절대 그럴 수는 없었습니다. 최근 Eclipse 와 ADT 가 업그레이드 되면서 누락 된 부분이 있어서 수동으로 설치를 해줘야 한다고 합니다. 원문참조 : http://stackoverflow.com/questions/16608524/eclipse-giving-error-missing-r-java-file-after-recent-update?lq=1 원문 참조 이구요. "Android SDK Manager" 버튼..
제가 최근에 읽었던 프로그래머들의 특징에 관한 글중에서 공감이 갔던 구절이 하나 있습니다. "프로그래머는 UX (User eXperience)를 개발한다고 해도 자신이 좋아하는 환경은 CLI (Command Line Interface)다" 다시금 진행하기전에 다짐하듯이 말씀드리는 사항은 안드로이드 (Android) 개발하기에 최적의 환경은 Google 에서 제공하는 ADT (http://developer.android.com/intl/ko/sdk/index.html) 환경에서 개발하는 것입니다. 이 포스트는 ADT 에서 개발을 진행하더라도 자꾸 자꾸 눈이 CLI 환경에서 떠나지 않는 중독자(?!!)들을 위한 것입니다. 이 포스트는 Emacs Version 24로 업글후 Clojure 와 Common Li..