1. Android SDK 설치
2. Target 을 USB로 연결
3. USB ID 획득
lsusb 명령어로 Target의 USB ID를 확인
Bus 001 Device 002: ID 04e8:685e [Manufacturer]
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
새로 연결된 타겟 뒤의 ID만 확인하시면 됩니다.
4. /etc/udev/rules.d/ 51-android.rules 파일에 USB ID 등록
위에서 얻은 ID를 해당 파일에 넣어주면 됩니다.
파일은 보통 존재하지 않으며, 새로 만들어주시면 됩니다.
sudo vi /etc/udev/rules.d/51-android.rules
파일을 연 후에 아래와 같이 적어주시면 됩니다.
SUBSYSTEMS=="usb", ATTRS{idVendor}=="04e8", ATTRS{idProduct}=="685e", MODE="0666"
타겟마다 ID가 틀릴 수 있기 때문에 lsusb 명령어를 통해 얻은 ID를 확인해주셔야합니다.
5. Target 분리 후 다시 연결
6. adb devices 명령어로 확인하였을 때 아래와 같이 나오면 됩니다.
List of devices attached
M110823949234 device
[출처] http://www.appcreator.com/app-inventor-connecting-ubuntu-and-samsung-galaxy-s
VRzin's Blog
2011/10/13
2010/07/20
Application에 할당되는 Maximum VM Heap Size의 변경
간혹 OpenGL 기반 Application이나 메모리 사용량이 많은 Application을 개발할 때, Heap이 부족하여, 메모리 할당을 받지 못해 Application이 정상적으로 동작하지 않는 경우가 있다. Application단에서 이를 해결할 방법은 없으며, Framework에서 수정되어야 한다.
파일: android/frameworks/base/core/jni/AndroidRuntime.cpp
수정 전: property_get("dalvik.vm.heapsize", heapsizeOptsBuf+4, "16m");
수정 후: property_get("dalvik.vm.heapsize", heapsizeOptsBuf+4, "48m");
만약 48MiB도 작다면, 맘껏 늘려보자. :-p
[Update]
욱's님에 의하면, build.prop에 있는 dalvik.vm.heapsize의 값을 원하는 값으로 설정해줘야 한다고 합니다.
만약 48MiB도 작다면, 맘껏 늘려보자. :-p
[Update]
욱's님에 의하면, build.prop에 있는 dalvik.vm.heapsize의 값을 원하는 값으로 설정해줘야 한다고 합니다.
2010/07/19
Emulator의 SD Card를 Mount하는 방법
타겟에서 작업할때는 별 상관 없지만, Emulator를 주로 사용하다보면 DDMS에서 볼 수 없는 파일들을 볼 일이 생길 경우가 있다. 이럴 경우에 mksdcard 명령으로 만들어진 이미지를 리눅스에서 간단하게 Mounting 할 수 있다.
$sudo mount -o loop <android sdcard file name> <mounting point>
$sudo mount -o loop <android sdcard file name> <mounting point>
2010/07/09
Eclair Full Build!
가정: "Get Android Source Code" 과정은 생략
~$ mkdir bin
~$ curl http://android.git.kernel.org/repo ~/bin/repo
~$ chmod a+x ~/bin/repo
~$ mkdir mydroid
~$ cd mydroid
~$ repo init-u git://android.git.kernel.org/platform/manifest.git -b eclair
~$ repo sync
소스를 다 받은 후, (엄청 오래 걸린다.)
~$ make
Eclair 빌드 후 Project 생성시 XML에러 문제
Eclair 버전에서 SDK를 만들어 이클립스와 연동한 다음, 프로젝트를 생성하면 아래와 같은 에러가 발생한다.
W/ResourceType(267): Unable to get buffer of resource asset file
ERROR No resource identifier found for attribute 'orientation' in package 'android'
...
해결 방법:
http://www.mail-archive.com/android-developers@googlegroups.com/msg21641.html
프로젝트 빌드 중 APP가 android.jar 파일안의 "resource.arsc" 파일을 버퍼에 넣을 때 버퍼의 사이즈가 작아 압축 실패가 원인이다.
[mydroid]/frameworks/base/include/utils/Asset.h 파일의 아래 내용을 다음으로 교체하면 해결됨.
수정 전:
#ifdef HAVE_ANDROID_OS
UNCOMPRESS_DATA_MAX = 1 * 1024 * 1024
#else
UNCOMPRESS_DATA_MAX = 2 * 1024 * 1024
#endif
수정 후:
#ifdef HAVE_ANDROID_OS
UNCOMPRESS_DATA_MAX = 4 * 1024 * 1024
#else
UNCOMPRESS_DATA_MAX = 4 * 1024 * 1024
#endif
안드로이드를 풀빌드하는 경우 HAVE_ANDROID_OS가 정의되어 있는 것으로 보임.
수정 후 빌드 완료!
W/ResourceType(267): Unable to get buffer of resource asset file
ERROR No resource identifier found for attribute 'orientation' in package 'android'
...
해결 방법:
http://www.mail-archive.com/android-developers@googlegroups.com/msg21641.html
프로젝트 빌드 중 APP가 android.jar 파일안의 "resource.arsc" 파일을 버퍼에 넣을 때 버퍼의 사이즈가 작아 압축 실패가 원인이다.
[mydroid]/frameworks/base/include/utils/Asset.h 파일의 아래 내용을 다음으로 교체하면 해결됨.
수정 전:
#ifdef HAVE_ANDROID_OS
UNCOMPRESS_DATA_MAX = 1 * 1024 * 1024
#else
UNCOMPRESS_DATA_MAX = 2 * 1024 * 1024
#endif
수정 후:
#ifdef HAVE_ANDROID_OS
UNCOMPRESS_DATA_MAX = 4 * 1024 * 1024
#else
UNCOMPRESS_DATA_MAX = 4 * 1024 * 1024
#endif
안드로이드를 풀빌드하는 경우 HAVE_ANDROID_OS가 정의되어 있는 것으로 보임.
수정 후 빌드 완료!
피드 구독하기:
게시물 (Atom)