2017-04-11 159 views
1

更新到應用程序後,我已檢查過,似乎所有用戶的數據都沒有明顯的原因被刪除。 檢查logcat顯示一些可疑的行:BackupManagerService:無法完成恢復

04-11 15:06:17.877 32429-17597 /? I/Backup:[GmsBackupTransport] Current restore package:PackageInfo {8f777e2 com.my.package}

04-11 15:06:17.878 24281-26232 /? I/BackupManagerService:下一個還原包:RestoreDescription {com.my.package:STREAM}

04-11 15:06:22.910 24281-32369 /? W/RestoreEngine:恢復清單簽名與com.my.package的已安裝應用程序不匹配

04-11 15:06:27.183 24281-26232 /? E/BackupManagerService:無法最終恢復com.my.package

04-11 15:06:27.184 24281-26232 /? I/ActivityManager:強制停止com.my.package appid = 10389 user = 0:清除數據

04-11 15:06:27.189 24281-24345 /? I/ActivityManager:強制停止com.my.package appid = 10389 user = -1:clearApplicationUserData

04-11 15:06:27.225 24281-26232 /? d/BackupManagerService:恢復com.my.package

的完整,殺死宿主進程發生此問題時應用程序的AndroidManifest有:

android:allowBackup="true" 

出於測試目的,我產生一個新的APK使用

android:allowBackup="false" 

將其更改爲false後不會發生。

什麼會導致此問題?

回答

1

關鍵線是這個:

恢復清單簽名不匹配安裝的應用程序。

當您在發佈模式下備份並在調試模式下進行恢復時發生這種情況,反之亦然。例外情況出現在BackupManagerService#restoreFinished()

爲了手動刪除備份,請遵循this步驟。

+0

謝謝! 您是否知道手動刪除備份的方法,以便我可以對此進行測試? –

+0

我認爲[this](http://android.stackexchange.com/a/69397/13319)是一個選項。 – azizbekian

+0

謝謝,這是做的伎倆,你的回答真的幫助我! –