我正在运行一些本机代码,并且有许多 JNI 调用应用程序崩溃,除了消息 /system/bin/app_process stack corruption detected: aborted in logcat if I try to debug 之外,没有任何线索说明它崩溃的原因
在这种情况下,如何确定罪魁祸首?任何可以在这里提供帮助的人
我正在运行一些本机代码,并且有许多 JNI 调用应用程序崩溃,除了消息 /system/bin/app_process stack corruption detected: aborted in logcat if I try to debug 之外,没有任何线索说明它崩溃的原因
在这种情况下,如何确定罪魁祸首?任何可以在这里提供帮助的人
我不是 C/C++ 专家,并且在 NDK 中遇到了类似的问题。(应用程序崩溃并显示日志:“检测到 /system/bin/app_process 堆栈损坏:中止”)。
我发现我的错误的原因是数组访问冲突。
以防万一像我这样的新人遇到这个问题,以下是一些常见的错误:
1.
char aa[6];
strcpy(aa,"abcdefghijk123457890");//out of bounds
2.
char aa[6];
sprintf(aa,“the value is : %d”, 123);//out of bounds