有時候咱們在APK安裝時因爲工程制定了UID,換過簽名後可能出現
android
相似 INSTALL_FAILED_SHARED_USER_INCOMPATIBLE 或 INSTALL_FAILED_UPDATE_INCOMPATIBLE 的錯誤
測試
,對於後者咱們能夠經過Logcat看到具體的好比說 has no signatures that match those in shared user 這樣的關鍵字,
ui
這是因爲使用了sharedUserId後你使用了不一樣的簽名形成的。
spa
Android中共享UID能夠讓多個應用使用經過Process ID,好比系統的android.process.acore就是個典型的例子,
xml
能夠共享內存空間外,還有不少好處,對於上面的錯誤沒法安裝,若是你的應用不涉及uid能夠先暫時去除Androidmanifest.xml中的SharedUserID這個屬性來順利安裝,以下紅色標的處:
內存
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
gc
package="com.android.sety"
android:sharedUserId="android.uid.system">db
不過通過Android123測試,即便經過系統的卸載或adb uninstall仍然沒法順利刪除包含SharedUserID的包。
文件
對於常規的應用出現 INSTALL_FAILED_UPDATE_INCOMPATIBLE 錯誤能夠嘗試Root機器,
在/data/system/packages.xml文件中,找到你應用相關內容。process