我正在通过ndk构建支持本机构建的Android应用程序。 此外,我使用Crashlytics NDK来获取jni和cpp崩溃的崩溃报告。 有时碰巧Crashlytics NDK无法为cpp类中的崩溃发送崩溃报告(java和jni就像魅力一样)。
08-13 09:45:05.690 25875-25996/? E/CrashlyticsNdk﹕ Failed to parse NDK crash data.
org.json.JSONException: End of input at character 0 of
at org.json.JSONTokener.syntaxError(JSONTokener.java:450)
at org.json.JSONTokener.nextValue(JSONTokener.java:97)
at org.json.JSONObject.<init>(JSONObject.java:156)
at org.json.JSONObject.<init>(JSONObject.java:173)
at com.crashlytics.android.ndk.JsonCrashDataParser.parseCrashEventData(JsonCrashDataParser.java:73)
at com.crashlytics.android.ndk.CrashlyticsNdk.doInBackground(CrashlyticsNdk.java:117)
at com.crashlytics.android.ndk.CrashlyticsNdk.doInBackground(CrashlyticsfNdk.java:23)
at io.fabric.sdk.android.InitializationTask.doInBackground(InitializationTask.java:63)
at io.fabric.sdk.android.InitializationTask.doInBackground(InitializationTask.java:28)
at io.fabric.sdk.android.services.concurrency.AsyncTask$2.call(AsyncTask.java:311)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:422)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
at java.lang.Thread.run(Thread.java:818)
似乎是crashlytics ndk框架中的一个错误。
正在使用以下版本:
com.crashlytics.sdk.android:crashlytics:2.5.0@aar
com.crashlytics.sdk.android:crashlytics-ndk:1.1.1@aar
Crashlytics Gradle配置:
crashlytics {
enableNdk true
androidNdkOut '$buildDir/../obj'
androidNdkLibsOut '$buildDir/../libs'
}
有什么建议吗?
答案 0 :(得分:2)
新版本的crashlytics ndk(v1.1.2)似乎解决了这个问题。 请参阅支持的回复:
我有一些好消息!我们找到了这个问题的根本原因,修复程序刚刚在1.1.2中发布。升级并试用它真是太棒了。 让我知道它是怎么回事!