Zak*_*eev 4 permissions android android-backup-service
我尝试在Android模拟器上使用我的应用程序,其中包含我自己的Android备份服务.但是备份不起作用,尽管AndroidManifest.xml中写了许可.BackupAgent
权限: <uses-permission android:name ="android.permission.BACKUP"/>
日志中警告: 09-17 09:05:58.553:WARN/PackageManager(73):未授予android.permission.BACKUP权限以打包my.package(protectionLevel = 3 flags = 0x1be46)
log中的异常(当我尝试调用requestRestore()时):java.lang.SecurityException:getCurrentTransport:用户10040和当前进程都没有android.permission.BACKUP.
我的代码有什么问题?
UPD:我的清单
<manifest xmlns:android="http://schemas.android.com/apk/res/android" package="my.package">
<uses-permission android:name="android.permission.BACKUP"/>
<application android:name="my.package.MyApplicationName" android:backupAgent="my.package.MyBackupAgent">
<meta-data android:name="com.google.android.backup.api_key" android:value="my_backup_api_key">
</application>
</manifest>
Run Code Online (Sandbox Code Playgroud)
Manifest权限的官方Android文档对权限一无所知
<uses-permission android:name="android.permission.BACKUP"/>
Run Code Online (Sandbox Code Playgroud)
所以,你应该从你的清单中删除它.Android的备份服务 并不需要额外的权限.
但是,可以使用指定的权限,但只能使用"系统"应用程序,因为它需要PROTECTION_SIGNATURE或PROTECTION_SIGNATURE_OR_SYSTEM 级别的权限.
只有在调用方法BackupManager.dataChanged(String packageName)时才需要此类权限,但实现备份服务时通常不需要此方法.
| 归档时间: |
|
| 查看次数: |
1002 次 |
| 最近记录: |