簡體   English   中英

我的應用程序崩潰而沒有錯誤 - 為什么會這樣?

[英]My app is crashing with no error - why so?

我剛剛簽署了 apk 並構建了發布版本。 on Debug 一切正常並且工作正常,但是當我切換到 release 時它崩潰但沒有記錄錯誤。

    buildTypes {
signingConfigs {
        debug {

        }
        release {
            storeFile file('/Users/../key-store')
            storePassword ''
            keyAlias = ''
            keyPassword ''
        }
    }
        release {
            minifyEnabled true
            shrinkResources true
            signingConfig signingConfigs.release
            buildConfigField("String", "URL_BASE", "")
            proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
        }

        debug {
            buildConfigField("String", "URL_BASE", "")
        }

這是運行選項卡

在此處輸入圖像描述

在設備中只是說仍然無法正常工作

也許與密鑰庫有關? 創建時出現錯誤消息,顯示密鑰創建時出現錯誤,建議遷移到 PKCS12,並顯示已正確遷移創建 key-store.old

keytool -importkeystore -srckeystore /Users/.../... -destkeystore /Users/.../... -deststoretype pkcs12

但無論該應用程序是否在發布時啟動,我想我都錯過了一些東西。

謝謝你的幫助。

編輯:添加了signingConfigs

我在調試版本中添加了 proguard,我收到以下錯誤:

2019-10-09 18:36:26.942 18303-18303/com.pablorojas.revoluttestapp E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.pab.testapp, PID: 18303
java.lang.LinkageError: Method void c.c.a.c.d.a.a() overrides final method in class Lb/m/x; (declaration of 'c.c.a.c.d.a' appears in /data/app/com.pabtestapp-kA1YNbWndd6N4igpvT7CwA==/base.apk)
    at com.pabtestapp.MainActivity.onResume(:28)
    at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1412)
    at android.app.Activity.performResume(Activity.java:7572)
    at android.app.ActivityThread.performResumeActivity(ActivityThread.java:4006)
    at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:4046)
    at android.app.servertransaction.ResumeActivityItem.execute(ResumeActivityItem.java:51)
    at android.app.servertransaction.TransactionExecutor.executeLifecycleState(TransactionExecutor.java:145)
    at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1948)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loop(Looper.java:214)
    at android.app.ActivityThread.main(ActivityThread.java:7050)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:965)

when is not obfuscated 不會顯示任何錯誤。

首先在您的 Menifest 文件應用程序標簽中添加android:debuggable="true" 因此,這將有助於在您的 logcat 上顯示錯誤。 之后檢查是什么問題。 當僅發布版本出現問題時,請檢查您的 progurd 規則並正確定義 progurd 規則。

eg.
<application
        android:icon="@mipmap/ic_launcher_icon"
        android:label="@string/app_name"
        android:debuggable="true">

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM