调试使用vs-android构建的Android原生应用程序
Debugging Android native applications built with vs-android
我使用vs-android来构建本地c++ Android应用程序。我想通过在模拟器上启动gdbserver并连接到该GDB服务器,从命令行进行调试。因为我没有使用Android构建脚本,所以我没有得到默认交付的gdbserver。因此,我将gdbserver添加到lib文件夹中,vs-android从这里收集它并将其推入APK。该文件现在可以在应用程序的lib文件夹中找到,当我使用adb install部署应用程序时,我的SO也位于该文件夹中。
我现在试着用run-as运行gdbserver,但我得到错误"Cannot attach to process 924: Operation not allowed(1)"。
根据此http://ian-ni-lewis.blogspot.com/2011/05/ndk-debugging-without-root-access.html,当gdbserver以run-as启动时,服务器应该能够连接到进程。
有什么想法,我可能还做错了吗?
adb shellSu -c setenforce 0这会解决问题的
要弄清楚问题是与run-as还是与gdbserver有关,请尝试使用run-as执行'ps'而不是gdbserver,然后查看'ps'进程是否与应用程序的进程具有相同的用户id。如果不是,那么你的run-as有问题。如果它与应用程序的用户id相同,那么问题更可能出现在gdbserver.
相关文章:
- Android Studio 中带有静态库的原生C++代码
- 如何在 Android Studio 4 中编译 C/C++ 原生代码
- Android Studio:如何在build.gradle中定义自定义宏(针对不同的构建变体),并让原生C / C++
- 在Android原生C++中使用Facemark opencv contrib
- 如何在 Android 原生版本中正确支持不同C++ STL
- Android 原生活动,GLES 3.0 着色器编译失败
- Android 原生强指针 vs std::shared_ptr.
- 如何在应用程序项目中使用android原生代码
- 在Android原生ndk中记录变量的值
- Android原生libc信号11(SIGSEGV),代码2(SEGV_ACCERR),故障地址
- 处理android原生活动中的主要命令
- 将libpng链接到Android原生项目
- Android原生C++错误
- Android原生前置摄像头c++
- Android原生库共享内存
- 调试使用vs-android构建的Android原生应用程序
- Android原生方法对Java是不可见的
- Android原生库链接到来自aar的另一个原生库
- 避免 Android 原生代码 (C++) 中的竞争条件
- 了解 Android 原生代码崩溃报告