我注意到在使用這兩個選項生成的apk之間的大小差異。Android Studio:建立APK之間的差異大小APK
爲什麼會發生這種情況?
隨着生成 - >構建APK選項:
MyProject的\應用\構建\輸出\ APK \ APP-debug.apk(尺碼2.997 KB)
隨着運行應用選項:
MyProject的\應用\構建\輸出\ APK \ APP-debug.apk(尺碼3.300 KB)
感謝。
我注意到在使用這兩個選項生成的apk之間的大小差異。Android Studio:建立APK之間的差異大小APK
爲什麼會發生這種情況?
隨着生成 - >構建APK選項:
MyProject的\應用\構建\輸出\ APK \ APP-debug.apk(尺碼2.997 KB)
隨着運行應用選項:
MyProject的\應用\構建\輸出\ APK \ APP-debug.apk(尺碼3.300 KB)
感謝。
如果對Android Studio團隊構成issue
,這可能會更好。我的猜測是你在Android Studio(AS)中使用。這將解釋更大的尺寸,因爲即時運行會爲已更改的代碼生成代理類。
編輯Run
配置以使用gradle build
構建,您應該能夠刪除額外的代碼......但是這會帶來更大的構建/部署時間......如果調試構建的大小對於然後你確定,但對於大多數情況下,這將毀了Android團隊最近對DSL做出的所有改進以提高速度
構建APK是運行:app:assembleDebug
Gradle任務的快捷方式(假設您的調試變體在中處於活動狀態構建變體窗口)。
運行應用程序時,我們首先詢問您想要定位哪個設備,然後將信息傳遞給Gradle。除此之外,這可以讓我們過濾掉不必要的資源。如果您啓用了即時運行功能,我們還會將其他代碼打包到APK中。
是的,即時運行它增加了文件大小,謝謝! – seba123neo
好的,那麼如何讓我的舊apk與縮小的尺寸,一次也包裝額外的代碼到APK中 –
當您通過建設 - 構建>生成APK,該APK將包含所有設備的所有資源。 即對於ldpi,mdpi,hdpi,xhdpi,xxhdpi,xxxhdpi。
但是,如果您在設備/模擬器上運行應用程序,它會檢測到手機的分辨率,並且只會將具有該分辨率的資源添加到apk文件中。例如,如果您的設備是xhdpi,它將放棄所有其他屏幕分辨率,並將只包含xhdpi資源。
是的,即時運行它增加了文件大小,謝謝! – seba123neo