[問題] 同一份Code 會產生出不同的APK

作者: charlie20083 (查理)   2016-07-20 12:01:14
呃... 如題
就 自己在幫忙寫App 然後遇到的類似的問題
在板上拿apk當關鍵字找好像也沒看到相關的討論的樣子
同一份Code 一個字都沒改 然後接不同的測試平板
Android Studio產生出來的APK居然會是不一樣的...
目前身邊有的平板分別是
Android 6.0.1 (CM13) 7" 1920x1200 的 ASUS Nexus 7 2013
Android 5.1.1 (CM12.1) 7" 1024x600 的 Amazon Fire 5th
Android 4.2.1 7" 1280x800 的 ASUS MemoPad HD 7 (ME173X)
(是還有一台 Android 4.0.3 10" 1280x800 的 ASUS Transformer (TF101G)
但因為這平板接電腦就不能充電 不方便測試就沒測了)
比對的結果長這樣


左邊的APK是接Amazon Fire產生的 然後產生出來的APK Nexus 7也吃
但是拿去MemoPad會跳掉
Logcat的錯誤訊息好像是Java有東西找不到之類的
(看起來像是系統層面 不是App產生的
然後右邊的APK則是接MemoPad產生的
不過拿去給Amazon Fire裝 反而執行起來蠻正常的 (至少沒一執行就跳掉
更別提曾經還產生過一種APK 裝了之後沒一台平板能跑的 不知道是怎麼辦到的
檔案我有還留著 假如傳上來有助於大家協助解決我的問題我再來傳...
所以想問說 有沒有辦法 叫Android Studio產生出一個
相容性比較好的apk出來 這樣也比較好給別人測試之類的
不然 感覺當時建立專案時設定的系統最小需求感覺就設定心酸的 ?
希望有大大能解惑 <(_ _)>
作者: ssccg (23)   2016-07-20 12:58:00
你apk是用什麼方式產生? 直接按run產生的debug apk?以你這兩張圖很明顯差在instant run,在不支援的手機Run AS會自動關掉這功能,生出來的apk自然沒有那些產生apk應該用Build > Build APK或直接跑對應的gradle task如果你用Build APK出來的不能跑,應該是要去找原因基本上那只是跑gradle的assemble<現在選的Build Variant>Instant Run沒有相容性比較高,這單純是測試時有修改可以不用重build整個apk,只deploy變動部分的機制,不適用輸出apk

Links booklink

Contact Us: admin [ a t ] ucptt.com