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

看板AndroidDev作者 (查理)時間8年前 (2016/07/20 12:01), 8年前編輯推噓0(008)
留言8則, 1人參與, 最新討論串1/1
呃... 如題 就 自己在幫忙寫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) 但因為這平板接電腦就不能充電 不方便測試就沒測了) 比對的結果長這樣 http://i.imgur.com/Nzllg1V.png
左邊的APK是接Amazon Fire產生的 然後產生出來的APK Nexus 7也吃 但是拿去MemoPad會跳掉 Logcat的錯誤訊息好像是Java有東西找不到之類的 (看起來像是系統層面 不是App產生的 然後右邊的APK則是接MemoPad產生的 不過拿去給Amazon Fire裝 反而執行起來蠻正常的 (至少沒一執行就跳掉 更別提曾經還產生過一種APK 裝了之後沒一台平板能跑的 不知道是怎麼辦到的 檔案我有還留著 假如傳上來有助於大家協助解決我的問題我再來傳... 所以想問說 有沒有辦法 叫Android Studio產生出一個 相容性比較好的apk出來 這樣也比較好給別人測試之類的 不然 感覺當時建立專案時設定的系統最小需求感覺就設定心酸的 ? 希望有大大能解惑 <(_ _)> -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 118.163.117.43 ※ 文章網址: https://www.ptt.cc/bbs/AndroidDev/M.1468987277.A.4E8.html

07/20 12:58, , 1F
你apk是用什麼方式產生? 直接按run產生的debug apk?
07/20 12:58, 1F

07/20 13:00, , 2F
以你這兩張圖很明顯差在instant run,在不支援的手機Run AS
07/20 13:00, 2F

07/20 13:00, , 3F
會自動關掉這功能,生出來的apk自然沒有那些
07/20 13:00, 3F
這兩個是直接按Run產生的沒錯 但 按Build->Build APK又曾經產生過三台平板都不能跑的APK 把它砍掉重新產生好像也是 反正就很玄... 不過看起來沒有Instant Run的相容性比較高? 還是有辦法可以把Android Studio的那功能直接關掉? ※ 編輯: charlie20083 (118.163.117.43), 07/20/2016 13:09:03

07/20 13:09, , 4F
產生apk應該用Build > Build APK或直接跑對應的gradle task
07/20 13:09, 4F

07/20 13:11, , 5F
如果你用Build APK出來的不能跑,應該是要去找原因
07/20 13:11, 5F

07/20 13:12, , 6F
基本上那只是跑gradle的assemble<現在選的Build Variant>
07/20 13:12, 6F

07/20 13:13, , 7F
Instant Run沒有相容性比較高,這單純是測試時有修改可以不
07/20 13:13, 7F

07/20 13:13, , 8F
用重build整個apk,只deploy變動部分的機制,不適用輸出apk
07/20 13:13, 8F
文章代碼(AID): #1NZlUDJe (AndroidDev)