首先,當您的手機上有應用程序,並且此應用程序在Play商店中有更新時,Google僅返回代碼的更新部分而不是整個包(例如3毫克而不是8毫克,這是整個包裝的尺寸)。我研究並發現,在Android端,谷歌播放提取本地應用程序,併合並從Play商店下載的更新文件,並生成新的apk,然後安裝新的apk與更新。考慮到Play商店沒有apk密鑰庫來簽署新的apk,但apk安裝成功。 現在,我有一個應用程序,從我的服務器下載更新的apk。服務器檢測兩個apks之間的更改並僅返回已完成的更改。現在,在Android端,我希望我的正在運行的應用程序能夠提取本地apk並將其與更新合併並生成新的apk(如Play商店)。它也應該簽署新的apk,但不應該把我的keystore放在用戶端文件中。 我最近在Windows中,解壓縮一個apk文件,並從另一個apk文件添加一些文件。兩個apks都簽了名。將該新apk安裝在我的手機中。但android無法安裝應用程序,並說「應用程序無法安裝」。 我該怎麼做?Extract apk和合並更新,然後安裝新的apk
0
A
回答
0
應用程序無法修改其APK。 apk文件僅對用戶system
可寫,因此在非根用戶設備上的常規應用程序無法更新或修改其自己的或任何其他apk。
唯一的方法就是保存到apk上的SD卡,然後觸發應用程序的側載,以便用戶可以選擇安裝它。但是AFAIR需要將設備激活爲「安裝來自未知來源的應用程序」(默認情況下禁用)。
簽名:APK簽名包含一個文本文件,該文件包含APK中包含的每個文件的散列以及該文本文件的簽名。
因此,如果您有兩個APK:一箇舊APK和一個新APK都正確簽名,並且提取新舊之間的更改(包括帶有哈希的文本文件以及它的簽名),並應用提取更改舊apk的「更新舊apk」不會按位相同,但它具有相同的內容。因此簽名將再次有效。
相關問題
- 1. APK更新
- 2. Android Studio沒有安裝最新的apk
- 3. 更新舊的APK與新
- 4. 編譯apk後安裝apk安裝錯誤
- 5. 下載並安裝APK
- 6. 在後檯安裝APK
- 7. Android Studio每次都重新安裝APK
- 8. 如何強制重新安裝APK
- 9. 託管APK +更新?
- 10. APK在更新後不會安裝在Cruz上,而是在EVO上安裝
- 11. 安裝apk時更換
- 12. 安卓:更新的apk文件編程
- 13. 安裝.apk
- 14. apk不安裝
- 15. 以編程方式從相同的應用程序本身安裝更新的APK。[更新apk]
- 16. 更新後的Genarate簽名APK Android Studio
- 17. 安裝新的apk並刪除以前的
- 18. 卸載現有版本的apk,如果它存在,然後重新安裝
- 19. apk安裝雙面安裝
- 20. 解釋安裝新的Android apk和升級現有的Android apk的區別? apk如何升級工作?
- 21. SQLite數據庫不會得到更新,除非我手動卸載,然後安裝新的APK
- 22. Eclipse中自動刪除的apk安裝後的apk
- 23. 安裝兩個apk使用一個apk
- 24. 安卓apk安裝模擬器然後設備
- 25. 安裝APK程序
- 26. 錯誤安裝APK
- 27. 無法安裝APK
- 28. 安裝具體apk
- 29. 自動安裝apk
- 30. 將Android新版apk緩存用於新版apk apk