0

最近、実稼働の Android アプリを Instabug 2.5.1 から 3.1.1 に更新しました。それ以来、Android 4 ~ 6 の範囲の携帯電話の InstabugFeaturesManager の NullPointerException が原因で、Fabric で一貫したクラッシュ レポートを取得しています。この問題はテストで確認されていないか、再現できませんでした。

クラッシュレポートは次のとおりです。

Fatal Exception: java.lang.RuntimeException: Unable to create application com.myapp.main.MyApplication: java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.Boolean.booleanValue()' on a null object reference
   at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6032)
   at android.app.ActivityThread.access$1700(ActivityThread.java:218)
   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1795)
   at android.os.Handler.dispatchMessage(Handler.java:102)
   at android.os.Looper.loop(Looper.java:145)
   at android.app.ActivityThread.main(ActivityThread.java:6934)
   at java.lang.reflect.Method.invoke(Method.java)
   at java.lang.reflect.Method.invoke(Method.java:372)
   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404)
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199)
Caused by java.lang.NullPointerException: Attempt to invoke virtual method 'boolean java.lang.Boolean.booleanValue()' on a null object reference
   at com.instabug.library.h.a(InstabugFeaturesManager.java:70)
   at com.instabug.library.g.b(InstabugDelegate.java:208)
   at com.instabug.library.Instabug$Builder.build(Instabug.java:1277)
   at com.instabug.library.Instabug$Builder.build(Instabug.java:1372)
   at com.myapp.main.MyApplication.onCreate(MyApplication.java:107)
   at android.app.Instrumentation.callApplicationOnCreate(Instrumentation.java:1035)
   at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6029)
   at android.app.ActivityThread.access$1700(ActivityThread.java:218)
   at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1795)
   at android.os.Handler.dispatchMessage(Handler.java:102)
   at android.os.Looper.loop(Looper.java:145)
   at android.app.ActivityThread.main(ActivityThread.java:6934)
   at java.lang.reflect.Method.invoke(Method.java)
   at java.lang.reflect.Method.invoke(Method.java:372)
   at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1404)
   at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1199)

build.gradle:

compile('com.instabug.library:instabug:3.1.1') {
    exclude group: 'com.android.support';
    exclude group: 'com.google.android.gms';
}

注: アプリが使用しているバージョンを制御したいので、これらのライブラリを除外しています。

MyApplication#onCreate():

new Instabug.Builder(this, MyConstants.Application.INSTABUG_KEY)
            .setInvocationEvent(InstabugInvocationEvent.SHAKE)
            .setShakingThreshold(500)
            .setCrashReportingState(Feature.State.DISABLED)
            .setTrackingUserStepsState(Feature.State.ENABLED)
            .setInAppMessagingState(Feature.State.DISABLED)
            .setIntroMessageEnabled(false)
            .setEmailFieldRequired(true)
            .build();  //Crash originates here

これはあなたの通常のNullPointerException質問ではないと主張します。1 つには、null になる可能性のあるビルドに何も追加していないため、内部でクラッシュする可能性があります。さらに、Instabug ライブラリは非常に難読化されているため、内部でクラッシュする理由がわかりません。私はいたるところを見回しましたが、他の誰かがこの問題を抱えているケースは見つかりませんでした. ここで何か不足していますか?

4

1 に答える 1

0

私は新しいリリース (3.1.4) に更新し、Instabug チームがこの問題の修正をプッシュしました。

于 2016-12-19T21:43:42.333 に答える