Android APP 大小限制 

在 Android Studio中,若 該APP大小超過65K,是無法安裝至手機中的

2017/11/19 更新

更正 是library太多太大, 超過64k才會有問題

這時候需要開啟 Multidex 功能, 不過也這功能開啟後, 會造成編譯過慢的問題... (真是麻煩)

 這時候需要在build.gradle與AndroidManifest中做調整

在build.gradle中 加入 "multiDexEnabled true"

defaultConfig {
    ...
    multiDexEnabled true
}

基本上這樣就可以了!! 

不過在android 5.0以下的裝置會出現相關問題

如library 忽然出現 " java.lang.NoClassDefFoundError"此問題

這時候可以使用以下方式看看

1. 導入library 

'com.android.support:multidex:1.0.2'

在dependencies中 加入

2. application 繼承   MultiDexApplication

這個讓我想了很久,不知道如何在AndroidManifest中做繼承

之後我在官方網站中看到這範例

In your manifest add the MultiDexApplication class from the multidex support library to the application element. 

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.myapp">
    <application
            android:name="android.support.multidex.MultiDexApplication" >
        ...
    </application>
</manifest>

自訂Application繼承方法

public class MyApplication extends MultiDexApplication {
   ...
}

我就姑且試試看, 沒想到真的可以使用。

 

資料來源:

Enable Multidex for Apps with Over 64K Methods

 

小小記錄~! 若以後方發生類似問題 也可立馬解決~!

 

文章標籤
全站熱搜
創作者介紹
創作者 Owen Chen 的頭像
Owen Chen

歐文的BLOG

Owen Chen 發表在 痞客邦 留言(0) 人氣(929)