[Desire] MIUI Backup always FC when trying to backup Programs


markusmuster

Members
Apr 18, 2011
5
11
Due to the log entries it seems that the backup application does no have the permissions to close the apps to backup. Well, but actually how do I grant the Backup.apk the permissions?




device_model:bravo
build_version:1.8.19
condition:1
processName:com.miui.backup
pid:7410
uid:10001
tag:null
shortMsg:java.lang.SecurityException
longMsg:java.lang.SecurityException: Permission Denial: forceKillPackage() from pid=7410, uid=10001 requires android.permission.FORCE_STOP_PACKAGES
stackTrace:java.lang.SecurityException: Permission Denial: forceKillPackage() from pid=7410, uid=10001 requires android.permission.FORCE_STOP_PACKAGES
at android.os.Parcel.readException(Parcel.java:1322)
at android.os.Parcel.readException(Parcel.java:1276)
at android.app.ActivityManagerProxy.forceKillPackage(ActivityManagerNative.java:2633)
at android.app.ActivityManager.forceKillPackage(ActivityManager.java:1083)
at com.miui.backup.BackupRestoreCmd.forceStop(BackupRestoreCmd.java:219)
at com.miui.backup.BackupUserAppCmd.preAction(BackupCmd.java:94)
at com.miui.backup.BackupRestoreCmd.execute(BackupRestoreCmd.java:38)
at com.miui.backup.BackupRestoreTask.action(BackupRestoreTask.java:123)
at com.miui.backup.BackupRestoreTask.execute(BackupRestoreTask.java:51)
at com.miui.backup.BackupService.executeTask(BackupService.java:167)
at com.miui.backup.BackupService.access$000(BackupService.java:25)
at com.miui.backup.BackupService$ServiceHandler.handleMessage(BackupService.java:200)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:130)
at android.os.HandlerThread.run(HandlerThread.java:60)

Detail logs:
--------- beginning of /dev/log/system
--------- beginning of /dev/log/main
I/SettingController( 7352): Export Secure Setting Counts : 51
I/NoteController( 7352): Export Folder Counts : 0
I/NoteController( 7352): Export Note Counts : 0
D/dalvikvm( 7352): GC_CONCURRENT freed 412K, 50% free 3343K/6663K, external 905K/1407K, paused 2ms+4ms
D/dalvikvm( 250): GC_EXPLICIT freed 79K, 38% free 9515K/15239K, external 0K/0K, paused 100ms
I/AntiSpamController( 7352): Export blacklist Counts : 0
I/AntiSpamController( 7352): Export whitelist Counts : 0
I/AntiSpamController( 7352): Export keyword Counts : 0
I/BackupService( 7352): Received start id 14: Intent { cmp=com.miui.backup/.BackupService }
I/CloudBackupService( 7352): Received start id 5: Intent { cmp=com.miui.backup/com.miui.milk.service.CloudBackupService }
I/BackupService( 7352): Received start id 15: Intent { cmp=com.miui.backup/.BackupService }
I/ActivityManager( 250): Starting: Intent { cmp=com.miui.backup/.ui.BackupSelectActivity } from pid 7352
D/dalvikvm( 7352): GC_CONCURRENT freed 427K, 49% free 3436K/6663K, external 905K/1407K, paused 3ms+5ms
I/BackupService( 7352): Received start id 16: Intent { cmp=com.miui.backup/.BackupService }
I/BaseSelectList( 7352): service bounded
I/ActivityManager( 250): Displayed com.miui.backup/.ui.BackupSelectActivity: +595ms
I/ActivityManager( 250): Starting: Intent { cmp=com.miui.backup/.ui.ProgressPageActivity } from pid 7352
I/BackupService( 7352): Received start id 17: Intent { cmp=com.miui.backup/.BackupService }
I/ProgressPageActivity( 7352): service bounded
I/ActivityManager( 250): Displayed com.miui.backup/.ui.ProgressPageActivity: +249ms
D/dalvikvm( 7352): GC_CONCURRENT freed 428K, 48% free 3484K/6663K, external 895K/1378K, paused 2ms+23ms
W/dalvikvm( 7352): threadid=9: thread exiting with uncaught exception (group=0x4013a568)
W/ActivityManager( 250): Permission Denial: forceKillPackage() from pid=7352, uid=10001 requires android.permission.FORCE_STOP_PACKAGES
E/AndroidRuntime( 7352): FATAL EXCEPTION: BackupService
E/AndroidRuntime( 7352): java.lang.SecurityException: Permission Denial: forceKillPackage() from pid=7352, uid=10001 requires android.permission.FORCE_STOP_PACKAGES
E/AndroidRuntime( 7352): at android.os.Parcel.readException(Parcel.java:1322)
E/AndroidRuntime( 7352): at android.os.Parcel.readException(Parcel.java:1276)
E/AndroidRuntime( 7352): at android.app.ActivityManagerProxy.forceKillPackage(ActivityManagerNative.java:2633)
E/AndroidRuntime( 7352): at android.app.ActivityManager.forceKillPackage(ActivityManager.java:1083)
E/AndroidRuntime( 7352): at com.miui.backup.BackupRestoreCmd.forceStop(BackupRestoreCmd.java:219)
E/AndroidRuntime( 7352): at com.miui.backup.BackupUserAppCmd.preAction(BackupCmd.java:94)
E/AndroidRuntime( 7352): at com.miui.backup.BackupRestoreCmd.execute(BackupRestoreCmd.java:38)
E/AndroidRuntime( 7352): at com.miui.backup.BackupRestoreTask.action(BackupRestoreTask.java:123)
E/AndroidRuntime( 7352): at com.miui.backup.BackupRestoreTask.execute(BackupRestoreTask.java:51)
E/AndroidRuntime( 7352): at com.miui.backup.BackupService.executeTask(BackupService.java:167)
E/AndroidRuntime( 7352): at com.miui.backup.BackupService.access$000(BackupService.java:25)
E/AndroidRuntime( 7352): at com.miui.backup.BackupService$ServiceHandler.handleMessage(BackupService.java:200)
E/AndroidRuntime( 7352): at android.os.Handler.dispatchMessage(Handler.java:99)
E/AndroidRuntime( 7352): at android.os.Looper.loop(Looper.java:130)
E/AndroidRuntime( 7352): at android.os.HandlerThread.run(HandlerThread.java:60)
W/ActivityManager( 250): Force finishing activity com.miui.backup/.ui.ProgressPageActivity
I/BackupService( 7352): Received start id 18: Intent { cmp=com.miui.backup/.BackupService }
I/CloudBackupService( 7352): Received start id 6: Intent { cmp=com.miui.backup/com.miui.milk.service.CloudBackupService }
I/BackupService( 7352): Received start id 19: Intent { cmp=com.miui.backup/.BackupService }
I/Process ( 7352): Sending signal. PID: 7352 SIG: 9
I/ActivityManager( 250): Process com.miui.backup (pid 7352) has died.
W/ActivityManager( 250): Service crashed 2 times, stopping: ServiceRecord{40d1aee0 com.miui.backup/com.miui.milk.service.CloudBackupService}
W/ActivityManager( 250): Service crashed 2 times, stopping: ServiceRecord{40dca588 com.miui.backup/.BackupService}
E/InputDispatcher( 250): channel '40d67cf8 com.miui.backup/com.miui.backup.BackupActivity (server)' ~ Consumer closed input channel or an error occurred. events=0x8
E/InputDispatcher( 250): channel '40d67cf8 com.miui.backup/com.miui.backup.BackupActivity (server)' ~ Channel is unrecoverably broken and will be disposed!
I/WindowManager( 250): WIN DEATH: Window{40d67cf8 com.miui.backup/com.miui.backup.BackupActivity paused=false}
W/InputManagerService( 250): Got RemoteException sending setActive(false) notification to pid 7352 uid 10001
D/dalvikvm( 963): GC_CONCURRENT freed 394K, 50% free 3117K/6215K, external 0K/512K, paused 6ms+3ms
 
Take a look at the backup.apk and open the androidmanifest.xml. There should be a line saying:
<uses-permission android:name="android.permission.FORCE_STOP_PACKAGES" />

This is what your logcat refers to.
I'm also on a Desire, although not on the miuiandroid build, but my backup works just fine..
You could also try checking backup.apk with root explorer and see if permissions is set correctly.
 
I also have a HTC Desire (gsm) and I have succesfully made a full backup without any Force Closes. However I did not yet try to restore though.
 
Take a look at the backup.apk and open the androidmanifest.xml. There should be a line saying:
<uses-permission android:name="android.permission.FORCE_STOP_PACKAGES" />

This is what your logcat refers to.
I'm also on a Desire, although not on the miuiandroid build, but my backup works just fine..
You could also try checking backup.apk with root explorer and see if permissions is set correctly.

Well, there is this attribute. But how do I set the permissions correctly?