Android 数据备份:被速率限制器中止
Android Data Backup: aborted by rate limiter
我已成功从我的设备备份数据。重新安装时,我恢复了第一个备份数据。但我的问题是进一步调用备份没有得到传输发送或保存的数据。
当我调用备份服务时,这是我的日志:
D/BackupManagerService(748): Now staging backup of com.company.app
D/PerformBackupTask(748): invokeAgentForBackup on @pm@
I/BackupRestoreController(748): Getting widget state for user: 0
I/PerformBackupTask(748): no backup data written; not calling transport
D/PerformBackupTask(748): starting agent for backup of BackupRequest{pkg=com.company.app}
D/BackupManagerService(748): awaiting agent for ApplicationInfo{fe3f4f5 com.company.app}
D/BackupManagerService(748): agentConnected pkg=com.company.app agent=android.os.BinderProxy@7166327
I/BackupManagerService(748): got agent android.app.IBackupAgent$Stub$Proxy@2de849d4
D/PerformBackupTask(748): invokeAgentForBackup on com.company.app
D/BackupHelperDispatcher(31817): handling existing helper 'data_file' android.app.backup.FileBackupHelper@34d086c5
I/BackupRestoreController(748): Getting widget state for user: 0
I/GmsBackupTransport(11651): K/V backup for com.company.app aborted by rate limiter. next=1437068418200, current=1436978369321
I/BackupManagerService(748): Backup pass finished.
两条线与我有关:
I/PerformBackupTask(748): no backup data written; not calling transport
I/GmsBackupTransport(11651): K/V backup for com.company.app aborted by rate limiter. next=1437068418200, current=1436978369321
这些正常吗?
当我对备份进行后续调用时,我可以看到我的数据存储在我指定的本地文件中,所以我只能假设问题出在传输上。
我想知道我是否需要以某种方式对我的数据进行版本控制?
Transport 默认会覆盖现有数据吗?
对于"aborted by rate limiter",您可以尝试bmgr list transports
,bmgr transport WHICH
切换到似乎没有速率限制的本地传输。
$ adb shell bmgr list transports
android/com.android.internal.backup.LocalTransport
* com.google.android.gms/.backup.BackupTransportService
$ adb shell bmgr list transports
* android/com.android.internal.backup.LocalTransport
com.google.android.gms/.backup.BackupTransportService
"aborted by rate limiter" 消息以纪元格式为您提供两个日期(即 next=1483295674399,current=1483213981015)。
您不能在下一个规定的 date/time 之前进行备份。要知道现在是几点,请前往 http://www.epochconverter.com/.
同时,您可以使用上一个答案所述的其他交通工具。
此致,
阿尔贝托
我已成功从我的设备备份数据。重新安装时,我恢复了第一个备份数据。但我的问题是进一步调用备份没有得到传输发送或保存的数据。
当我调用备份服务时,这是我的日志:
D/BackupManagerService(748): Now staging backup of com.company.app
D/PerformBackupTask(748): invokeAgentForBackup on @pm@
I/BackupRestoreController(748): Getting widget state for user: 0
I/PerformBackupTask(748): no backup data written; not calling transport
D/PerformBackupTask(748): starting agent for backup of BackupRequest{pkg=com.company.app}
D/BackupManagerService(748): awaiting agent for ApplicationInfo{fe3f4f5 com.company.app}
D/BackupManagerService(748): agentConnected pkg=com.company.app agent=android.os.BinderProxy@7166327
I/BackupManagerService(748): got agent android.app.IBackupAgent$Stub$Proxy@2de849d4
D/PerformBackupTask(748): invokeAgentForBackup on com.company.app
D/BackupHelperDispatcher(31817): handling existing helper 'data_file' android.app.backup.FileBackupHelper@34d086c5
I/BackupRestoreController(748): Getting widget state for user: 0
I/GmsBackupTransport(11651): K/V backup for com.company.app aborted by rate limiter. next=1437068418200, current=1436978369321
I/BackupManagerService(748): Backup pass finished.
两条线与我有关:
I/PerformBackupTask(748): no backup data written; not calling transport
I/GmsBackupTransport(11651): K/V backup for com.company.app aborted by rate limiter. next=1437068418200, current=1436978369321
这些正常吗?
当我对备份进行后续调用时,我可以看到我的数据存储在我指定的本地文件中,所以我只能假设问题出在传输上。
我想知道我是否需要以某种方式对我的数据进行版本控制?
Transport 默认会覆盖现有数据吗?
对于"aborted by rate limiter",您可以尝试bmgr list transports
,bmgr transport WHICH
切换到似乎没有速率限制的本地传输。
$ adb shell bmgr list transports
android/com.android.internal.backup.LocalTransport
* com.google.android.gms/.backup.BackupTransportService
$ adb shell bmgr list transports
* android/com.android.internal.backup.LocalTransport
com.google.android.gms/.backup.BackupTransportService
"aborted by rate limiter" 消息以纪元格式为您提供两个日期(即 next=1483295674399,current=1483213981015)。
您不能在下一个规定的 date/time 之前进行备份。要知道现在是几点,请前往 http://www.epochconverter.com/.
同时,您可以使用上一个答案所述的其他交通工具。
此致, 阿尔贝托