Google Play的應用升級受制的一種解決方案


Google Play發布應用后只允許通過Google Play升級應用,想同時通過本地服務器進行App升級,怎么辦?

Google Play下載的應用是不支持應用本地進行升級的,要想規避Google Play的這個規則怎么辦?

在應用初次發布到Google Play時,審核會比較嚴格,會對初次上傳的App檢測自帶升級等功能,因此,初次發布App到Google Play時務必關閉本地升級服務,審核通過,發布成功,再打開就不影響了,再次更新發布版本時,審核會相對送些,但為了確保審核通過更新發布成功,建議發布成功再打開升級服務。

應用在發布前需要簽名,之后在Google Play發布應用時不使用google的再簽名,這樣就能保證兩種途徑升級應用簽名一致。做個假設,我從Google play下載了App的V1.0.0版本,之后在App使用時通過本地升級到V1.0.1,這樣再進入Google Play搜索本應用,顯示為未安裝,猜測Google Play上下載安裝的應用會打上Google的標簽,而本地升級后的App沒有帶Google的標簽,所以Google Play認定為該應用未安裝。

這說明但凡通過本地升級Google Play下載的應用之后,就和Google Play升級應用分道揚鑣了,就只能通過本地升級了。隨著App版本的不斷升級,用戶但凡通過本地升級,就回不到Google Play升級應用的路線上了,這并不是個好的情況。

為什么這么說呢?

用戶脫離Google Play之后,Google Play自帶的區域、語言、Android系統等統計資料就用不了了,而且也影響了App在Google Play中的下載量排名、影響度等。

有什么兩全其美的解決辦法嗎?

既不影響Google Play原有用戶量,也能兼容本地升級和Google Play升級。

有一個比較合理的方案:應用在發布前自己進行簽名,發布到Google Play上的應用使用google的再簽名,就是在我們自己簽名apk的基礎上再打一層簽名,其實這一層簽名打完之后,就和我們自己打包簽名的Apk不一樣了,簽名不一致。這樣我們在自己的App中存一份自己的簽名文件和一份Google Play為本App生成的簽名文件,在App進行本地升級時就可以通過判斷本Apk簽名和哪個簽名文件一致來確定Apk的來源。

如果本Apk簽名和Google Play為本App生成的簽名文件一致,說明本APk來源為Google Play下載或更新的,那么當本地升級檢測到服務器有更高版本的Apk,則彈出對話框提示用戶有新版本,用戶點擊“確認”后,跳轉到Google Play進行升級。

如果本Apk簽名和自己的簽名文件一致,說明本APk來源為本地下載或更新的,那么當本地升級檢測到服務器有更高版本的Apk,則彈出對話框提示用戶有新版本,用戶點擊“確認”后,直接在本App中請求服務器進行下載升級。

?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 173,155評論 25 708
  • 用兩張圖告訴你,為什么你的 App 會卡頓? - Android - 掘金 Cover 有什么料? 從這篇文章中你...
    hw1212閱讀 12,897評論 2 59
  • 每天聆聽‘安全在線兩分鐘’時刻感覺到安全責任的重大,王姐每天的堅守和執著是對安全工作的一份誠摯的熱...
    牧羊海閱讀 302評論 0 0
  • 今日體驗:今天維修一輛寶馬五系維修下來需要一萬多,但是客戶還是修了,核心:信任,總結:我們維修后的信任所以會繼續相信。
    房傲東閱讀 125評論 0 0
  • 陽山坪故親戚廢屋 二十年前三口家,菜根粗飯事桑麻。 而今都付無常主,惆悵墳頭長蕨芽。 李市鎮老街 石橋古樹水潺湲,...
    李野航閱讀 412評論 0 2