gpt4 book ai didi

google-play - 如何阅读Play商店崩溃报告,Proguard混淆

转载 作者:行者123 更新时间:2023-12-02 09:41:42 25 4
gpt4 key购买 nike

我在Google Play商店中收到以下崩溃报告:

java.lang.NullPointerException: 
at com.xxx.MainActivity.access$1000 (MainActivity.java)
or .access$900 (MainActivity.java)
or .doStamping (MainActivity.java)
or .handleIntent (MainActivity.java)
or .putLabelOnStableStoppedButton (MainActivity.java)
or .wrongFilePopup (MainActivity.java)
at com.xxx.MainActivity.access$1502 (MainActivity.java)
or .access$1700 (MainActivity.java)
or .access$200 (MainActivity.java)
or .access$2000 (MainActivity.java)
or .access$800 (MainActivity.java)
or .createDateDetailsSummaryText (MainActivity.java)
or .refreshLabelOnStampButton (MainActivity.java)
or .stampGPSEvent (MainActivity.java)
or .startGPSLogging (MainActivity.java)
at com.xxx.MainActivity.access$100 (MainActivity.java)
or .access$1402 (MainActivity.java)
or .access$1602 (MainActivity.java)
or .access$1900 (MainActivity.java)
or .access$2400 (MainActivity.java)
or .access$400 (MainActivity.java)
or .access$500 (MainActivity.java)
or .access$602 (MainActivity.java)
or .access$702 (MainActivity.java)
or .btAutoStamping (MainActivity.java)
or .createHtmlTextForButton (MainActivity.java)
or .csvImportFinished (MainActivity.java)
or .displayGetProPopup (MainActivity.java)
or .getValuesAndSaveDialog (MainActivity.java)
or .intentDisplayMap (MainActivity.java)
or .parseIntFromPrefs (MainActivity.java)
or .pickedFileOK (MainActivity.java)
or .showCurrentTripPopUp (MainActivity.java)
or .showStampLimitExceededPopup (MainActivity.java)
or .stopGPSLogging (MainActivity.java)
or .stopTickingBtStamp (MainActivity.java)
or .wrongFilePopup (MainActivity.java)
at com.xxx.MainActivity$21.onClick (MainActivity.java)
at android.support.v7.app.AlertController$ButtonHandler.handleMessage (AlertController.java)
at android.os.Handler.dispatchMessage (Handler.java:102)
at android.os.Looper.loop (Looper.java:154)
at android.app.ActivityThread.main (ActivityThread.java:6776)
at java.lang.reflect.Method.invoke (Method.java)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run (ZygoteInit.java:1496)
at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1386)

我有两个问题:
  • 为什么总是一直说“或”?我无法清楚了解崩溃的位置吗?
  • “.access $”之后的所有数字是什么?我本来希望有行号,但
  • 似乎并非如此

    最佳答案

    1:Proguard经常会重复使用方法名称,这意味着在进行模糊处理时, map 无法分辨出差异,因此必须向您显示所有可能性。 This questionThis question可能会有所帮助。

    2:access $是内部类或lambda上访问父类的方法。例如,如果您有如下代码:

    class Outer {
    private boolean field = false;

    class Inner {

    void doSomething() {
    if (field) {
    System.out.println("hello world");
    }
    }
    }
    }

    粗略地说,要执行“if field”行,编译器需要从Inner访问Outer.field。但是字节码没有内部类的概念。
    因此,它创建了一个隐藏方法access $ XXX()来访问Outer.field。如果使用 lambda expression,也会发生类似的情况。

    关于google-play - 如何阅读Play商店崩溃报告,Proguard混淆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49997540/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com