wct*_*097 1 android android-backup-service
我已经查看了文档和示例BackupRestore应用程序,并编写了我自己的测试应用程序实现android:backupAgent.我扩展了BackupAgent课程,因为我主要担心的是能够从数据库备份数据.我甚至无法使用此功能制作一个简单的概念验证应用程序.
为了使事情变得非常简单,我宣布android:backupAgent为MyBackupAgent在清单.然后我创建了一个MyBackupAgent.java类,扩展BackupAgent.然后我为类中的onBackup()和onRestore()方法创建了覆盖MyBackupAgent,就像在示例和文档中一样.我Log.i()在每个函数的最开头添加了一个调用,以便在调用函数时可以在LogCat中识别.同样,我在这两个方面都设置了断点.然后我继续实现我的代码来备份数据库.
我使用2.2w/Google API创建了一个模拟器图像,甚至在Accounts&Sync下添加了一个gmail帐户.运行adb命令以启用bmgr,备份应用程序,运行备份,卸载应用程序,重新安装应用程序等....我从来没有从Log.i()命令中的任何一个onBackup()或onRestore()函数中获取日志文件中的消息.
我在我的Evo 4g上再次尝试2.2.结果相同.备份管理器似乎没有在类中调用onBackup()和onRestore()函数MyBackupAgent.
我在日志中得到的唯一奇怪信息是来自BackupManagerService"备份传递但e = true p = false",我相信在响应ADB命令备份应用程序时.
有什么建议?我错误地认为和函数中的Log.i()语句会出现在LogCat中吗?onBackup()onRestore()
输出Backup pass but e=true p=false表示备份管理器已启用(e=true)但未配置(p=false).
只有满足这两个条件时,它才会运行备份.因此,出于某种原因,在您的仿真器映像上没有配置备份管理器,在挖掘代码后我注意到它应该在启动期间自动配置(DefaultActivity)
I/ActivityManager( 73): Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.HOME] flg=0x10000000 cmp=com.android.sdksetup/.DefaultActivity } from pid 0
Run Code Online (Sandbox Code Playgroud)
我刚刚创建了一个新的模拟器图像,它在那里没有问题.
| 归档时间: |
|
| 查看次数: |
4005 次 |
| 最近记录: |