Vio*_*ffe 2 windows debugging android android-ndk eclipse-adt
在调查本机代码中遇到断点的问题时,我决定检查ndk-gdb是否正常工作.我删除了app_process,启动了Java调试并运行ndk-gdb --force.猜猜看,没有创建app_process.ndk-gdb --verbose输出有这一行:
## COMMAND: adb_cmd pull /system/bin/app_process obj/local/armeabi-v7a/app_process
remote object '/system/bin/app_process' not a file or directory
Pulled app_process from device/emulator.
Run Code Online (Sandbox Code Playgroud)
我已经从目标设备上卸载了应用程序,重新启动了设备并重复了.仍然没有app_process.所以,我想知道这里的问题是什么,我也想知道什么时候创建这个文件,以及什么进程/脚本.
如前所述,Android 5.0具有/system/bin/app_process符号链接/system/bin/app_process32.由于无法使用符号链接adb pull,因此ndk-gdb脚本无法按原样运行.
更改ndk-gdb如下以支持api21更改以及<api21的向后兼容性:
# Get the app_server binary from the device
APP_PROCESS=$APP_OUT/app_process
if [ "$API_LEVEL" -lt "21" ] ; then
run adb_cmd pull /system/bin/app_process `native_path $APP_PROCESS`
log "Pulled app_process from device/emulator to $APP_PROCESS"
else
run adb_cmd pull /system/bin/app_process32 `native_path $APP_PROCESS`
log "Pulled app_process32 from device/emulator to $APP_PROCESS"
fi
Run Code Online (Sandbox Code Playgroud)
编辑:或:
# Get the app_server binary from the device
APP_PROCESS=$APP_OUT/app_process
APP_PROCESS_DEVICE=app_process32
if [ "$API_LEVEL" -lt "21" ] ; then
APP_PROCESS_DEVICE=app_process
fi
run adb_cmd pull /system/bin/$APP_PROCESS_DEVICE `native_path $APP_PROCESS`
log "Pulled $APP_PROCESS_DEVICE from device/emulator to $APP_PROCESS"
Run Code Online (Sandbox Code Playgroud)
Original Change也在这里:http://pastebin.com/YfxNs06U.请注意,此更改将重命名app_process32为将app_process其更改为启动到开发计算机以支持在Eclipse中具有单个调试配置.
| 归档时间: |
|
| 查看次数: |
4287 次 |
| 最近记录: |