1,这个地方有一个解决方案
http://www.drovik.com/html/3294084942.html
android开发过程中,在用eclipse的图形化工具调试c++程序的时候,报出了如下错误:
Could not extract package's data directory. Are you sure that your installed application is debuggable?
在AndroidManifest.xml文件中我已经设置debuggable选项为true, 可是还是报出如上的错误,造成生成app_process文件失败,就无法进行调试了。
解决这个问题需要修改ndk-gdb的脚本。
2,还有一个解决方案:
http://visualgdb.com/KB/?ProblemID=nopkg
This is a known bug of the Android platform. When you try to debug your NDK-based app, gdbserver fails to start and a message like below is shown:
This happens due to two known bugs related to the run-as tool. The tool needs to read information about your app from the /data/system/packages.list file inside your Android device. In the case of the first bug, the tool is actually only reading the first 8KB of the file. Thus, if the line containing your app description is below the first 8 KB, run-as will fail. The second bug affects some 4.2.2 and 4.3 Android images by falsely restricting read rights of the packages.list file that contains all the package names.
8 Kilobyte Bug
Detection
- Retrieve the packages.list file by running the following command inside SDK\platform-tools:
adb pull /data/system/packages.list
- If the file is larger than 8 kilobytes, your problem is caused by the 8 kilobyte bug.
Workarounds
There are three known workarounds for this bug:
- Uninstall unnecessary apps from your Android device to reduce the size of the packages.list file
- Try renaming the app ID arbitrarily. The order of the lines inside packages.list depends on the hash value of the app ID. Thus changing the ID just a bit might put it within the first 8 KB.
- If your device is rooted, edit the packages.list file manually to put your app in front of the list.
Read Rights Bug
Detection
- Is your Nexus or Galaxy Android device using Android 4.2.2 or Android 4.3?
- Open Android shell. Change directory to "/data/system", run the command "ls -l". Are the access rights to packages.list "-rw-rw----" instead of "-rw-rw-r--" ? If yes, then your device's image is affected by the bug.
Workarounds
- Install the 4.3 factory image for the Android device manually. Do not install the mini 4.3 update after installing the image.
- If your device is rooted, change the read rights of the packages.list file.
- Add the set-uid bit to the run-as binary:
su
mount -o remount,rw /system
chmod 4750 /system/bin/run-as - Try other workarounds from the official bug thread.