簡體   English   中英

嘗試安裝現有調試 apk 時出現“未安裝應用程序”

[英]“App not installed” when trying to install over existing debug apk

當兩個或多個開發者在一個團隊中工作時,如果它是由其他開發者生成的,他們不能覆蓋已安裝的 APK。 這是確切的場景:

  1. 兩名開發人員正在開發同一個 Android 項目。
  2. 當開發人員一生成並共享調試 APK。 它安裝在設備上並正常運行。
  3. 當開發人員二生成具有相同代碼庫的調試 APK 並嘗試通過開發人員一共享的應用程序安裝應用程序時,它顯示消息為“應用程序未安裝”。
  4. 當開發人員再次共享調試 APK 時,它會安裝在現有應用程序上。

誰能告訴為什么會發生此錯誤是否存在任何筆記本電腦級別的依賴性?

為什么會發生這種情況

發生這種情況是因為您在 Android 上構建的應用程序正在使用本地計算機上生成的特定密鑰庫進行簽名。 因此,當開發人員 1 使用他的密鑰庫對應用程序進行簽名時,它會獲取他的指紋並且您可以正常安裝它。 但是當開發人員 2 使用他的(不同的)密鑰庫構建應用程序時,它會獲得不同的指紋。 因此 Android 不會讓您覆蓋已安裝的應用程序。 解決方案是共享調試密鑰庫,以便所有 APK 的指紋對齊。

密鑰庫可以在~/.android/debug.keystore中找到。

如何驗證

您可以使用以下命令驗證 APK 的指紋: keytool -printcert -jarfile app.apkkeytool -printcert -jarfile app.aab如果您是 output 是 aab。

在生成調試 APK 之前,Android Studio 會自動使用由 Android SDK 工具生成的調試證書對您的應用進行簽名。 因此,這兩個 APK 都使用不同的密鑰簽名。

你可以在這里閱讀更多

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM