Android JNI:如何在c进程中获取崩溃信息?

时间:2015-05-28 10:50:44

标签: android c crash java-native-interface logcat

我想将应用崩溃信息上传到我的服务器。我用C语言启动一个进程,当C进程发现应用程序停止时,它收集了logcat信息并将它们上传到我的服务器。 但我发现当我使用“fstream = popen(”logcat -t 1000“,”r“)”时,我无法获得崩溃信息。

if(NULL == (fstream = popen("logcat -t 1000", "r")))
{
    fprintf(stderr,"execute command failed: %s",strerror(errno));
    return -1;
}
while (NULL != fgets(buff, sizeof(buff), fstream))
{
    __android_log_print(ANDROID_LOG_DEBUG, PUSH_LOG_TAG, "%s", buff);
    memset(buff,0,sizeof(buff));
}

这是我在日食的logcat中得到的: enter image description here

这是我在C过程中得到的: enter image description here

我想知道为什么C进程的“fstream = popen(”logcat -t 1000“,”r“)”无法获取DEBUG崩溃信息。

谢谢,并祝福。

0 个答案:

没有答案