簡體   English   中英

生成簽名的APK錯誤

[英]Generate Signed APK Errors

當我在模擬器中運行應用程序時,它可以運行,但是當我想要生成簽名的APK時,出現以下錯誤消息:

[錯誤:任務':app:transformClassesWithDexForRelease'的執行失敗。 > com.android.build.api.transform.TransformException:com.android.ide.common.process.ProcessException:java.util.concurrent.ExecutionException:com.android.dex.DexIndexOverflowException:方法ID不在[0,0xffff]中:65536]

此錯誤消息是什么意思,有沒有辦法解決此問題?

錯誤的屏幕截圖

DexIndexOverflowException:溢出表示已達到限制。

您的dex文件大小已達到極限,即64K,因此您需要在項目中實現Multidex支持,請遵循docs的官方鏈接

要么

在build.gradle中添加以下內容以啟用Multidex支持

defaultConfig {
    ...
    // Enabling multidex support.
    multiDexEnabled true
}

在清單應用程序標記中設置應用程序名稱multidex支持

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.android.multidex.myapplication">
    <application
        ...
        android:name="android.support.multidex.MultiDexApplication">
        ...
    </application>
</manifest>

而且,如果您有應用程序類,則在super.onCreate之前啟用dex。

MultiDex.install(getTargetContext());
super.onCreate(arguments);

有些技巧可能會派上用場:刪除不需要的依賴關系,文件,並使用像克等,而不是將其作為一個整體,再加上你可以使用最佳實踐proguard的具體規則玩谷歌的依賴按照鏈接為例

暫無
暫無

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

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