AndroidManifest.xml
Application 항목에 android:debuggable="true" 속성 추가
<application ... android:debuggable="true">
adb path 설정
아래와 같이 하면 .bashrc 파일 내 공백문제 없이 입력가능? => 확인안됨
export $PATH:'/cygdrive/c/Program Files/Android/android-sdk/platform-tools/'
.bashrc 파일 내 아래 내용 추가 시 Program Files 공백문제로 인해 문제발생 소지가 있음
따라서 아래 내용은 cygwin 상에서 직접 입력
export $PATH:/cygdrive/c/Program\ Files/Android/android-sdk/platform-tools/
ndk-gdb --adb=../../Android/android-sdk/platform-tools/adb.exe
이후 계속적인 path 문제 발생으로 인해 결국 sdk 위치 변경
emulator -partition-size <size> -avd test233
ndk-gdb 사용을 위한 삼성 갤럭시S2 루팅
커널 종류가 많다.
제일 쉬운 방법은 다운로드 만으로 루트권한을 얻을 수 있는 경량의 테그라크 커널을 이용하는 것이다.
pspmaster.tistory.com 에서 통신사와 빌드버전을 확인 후 다운받는다. build 23 이 진저브레드 EE31 이다.
오딘을 통해 빌드하도록 한다.
만약의 경우를 대비해 아래의 주소에서 순정커널도 받아놓도록 한다.
run-as 에서의 문제로 인해(pkg 용량과 관련된 buffer or permission ?)
아래와 같이 수정 필요
--- ndk-gdb 2011-02-24 16:55:07.000000000 +0900
+++ ndk-gdb-root 2011-06-09 08:35:04.000000000 +0900
@@ -465,7 +465,7 @@
log "Using app out directory: $APP_OUT"
# Find the <dataDir> of the package on the device
-DATA_DIR=`adb_shell run-as $PACKAGE_NAME /system/bin/sh -c pwd`
+DATA_DIR="/data/data/$PACKAGE_NAME"
log "Found data directory: '$DATA_DIR'"
if [ $? != 0 -o -z "$DATA_DIR" ] ; then
echo "ERROR: Could not extract package's data directory. Are you sure that"
@@ -543,7 +543,7 @@
# Launch gdbserver now
DEBUG_SOCKET=debug-socket
-run $ADB_CMD shell run-as $PACKAGE_NAME lib/gdbserver +$DEBUG_SOCKET --attach $PID &
+run $ADB_CMD shell "(cd $DATA_DIR; lib/gdbserver +$DEBUG_SOCKET --attach $PID)" &
if [ $? != 0 ] ; then
echo "ERROR: Could not launch gdbserver on the device?"
exit 1
원문참조http://stackoverflow.com/questions/6158953/running-ndk-gdb-with-package-not-found-error-on-motorola-phonehttp://code.google.com/p/android/issues/detail?id=16391
http://code.google.com/p/android/issues/detail?id=13965



최근 덧글