android 自動更新失敗原因及解決辦法

來源:互聯網
上載者:User

               做android開發的童鞋一定遇到過這種情況吧,辛辛苦苦做了很久的新版本盡然無法自動更新。

              

           用戶端檢測更新、下載更新檔案都沒有問題,但就是安裝失敗,而且google的安裝失敗很讓人鬱悶,只提示說安裝失敗卻不說是什麼原因,傷不起啊。 去網上找了很久都沒有搞定這個問題,糾結了很久,有木有。

        前兩天終於搞定了這個問題,現在思考來安裝失敗主要有以下三個原因:

        1.用戶端已經安裝的版本簽名和更新檔案apk簽名不一致,例如之前發布的apk使用的是a.keystore簽名打包的,後來更新檔案又使用了b.keystore打封裝更新,在更新的時候被系統檢測到版本簽名不一致所以更新失敗。  

       解決方案: 統一所有apk的簽名方式為a.keystore簽名打包,如果沒有keystore檔案的,建議你每次都是用debug.keystore簽名打包[不過這種方式個人認為不太安全]。

       2.手機串連USB在調試狀態下,直接從eclipse中運行並且進行更新,這種情況和上一種一樣,更新失敗也是由於簽名不一致。直接從eclipse中運行系統會預設已debug.keystore檔案來簽名打包,而你的更新檔案如果不是已debug.keystore來打包的自然更新失敗。  

       解決方案: 刪除掉手機上原有的apk,直接從SD卡上安裝上一個版本,然後測試更新。

      3.缺少安裝應用程式的許可權。

      解決方案: 在你的應用程式中加入安裝應用程式許可權就可以了

     <!-- 安裝程式的許可權 -->
     <uses-permission android:name="android.permission.INSTALL_PACKAGES" />

全部檢查修改後,再次測試,OK!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.