Android:将异常写入包裹?
我的应用程序代码中出现以下Logcat错误:Android:将异常写入包裹?,android,file,Android,File,我的应用程序代码中出现以下Logcat错误: 07-14 20:17:15.026: E/DatabaseUtils(814): Writing exception to parcel 07-14 20:17:15.026: E/DatabaseUtils(814): java.lang.SecurityException: Permission Denial: get/set setting for user asks to run as user -2 but is calling from
07-14 20:17:15.026: E/DatabaseUtils(814): Writing exception to parcel
07-14 20:17:15.026: E/DatabaseUtils(814): java.lang.SecurityException: Permission Denial: get/set setting for user asks to run as user -2 but is calling from user 0; this requires android.permission.INTERACT_ACROSS_USERS_FULL
07-14 20:17:15.026: E/DatabaseUtils(814): at com.android.server.am.ActivityManagerService.handleIncomingUser(ActivityManagerService.java:14608)
我试图通过在清单中添加以下权限来解决问题,如错误中所述:
<uses-permission android:name="android.permission.INTERACT_ACROSS_USERS_FULL"/>
错误的完整堆栈跟踪:
07-14 21:48:00.903: E/DatabaseUtils(814): Writing exception to parcel
07-14 21:48:00.903: E/DatabaseUtils(814): java.lang.SecurityException: Permission Denial: get/set setting for user asks to run as user -2 but is calling from user 0; this requires android.permission.INTERACT_ACROSS_USERS_FULL
07-14 21:48:00.903: E/DatabaseUtils(814): at com.android.server.am.ActivityManagerService.handleIncomingUser(ActivityManagerService.java:14608)
07-14 21:48:00.903: E/DatabaseUtils(814): at android.app.ActivityManager.handleIncomingUser(ActivityManager.java:2258)
07-14 21:48:00.903: E/DatabaseUtils(814): at com.android.providers.settings.SettingsProvider.call(SettingsProvider.java:663)
07-14 21:48:00.903: E/DatabaseUtils(814): at android.content.ContentProvider$Transport.call(ContentProvider.java:325)
07-14 21:48:00.903: E/DatabaseUtils(814): at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:275)
07-14 21:48:00.903: E/DatabaseUtils(814): at android.os.Binder.execTransact(Binder.java:404)
07-14 21:48:00.903: E/DatabaseUtils(814): at dalvik.system.NativeStart.run(Native Method)
请对您的错误进行最低限度的研究。您链接的答案的可能重复实际上并不能解决问题?是否有其他解决方案?我的理解是,您正在尝试从另一个应用程序复制数据库。你不能那样做。出于安全原因,我希望你能理解。
/**
* CRUD Operations
* */
// Inserting Contacts
Log.d("Insert: ", "Inserting ..");
db.addScore(new Score(UserName.getUserName(), score, System.currentTimeMillis() ));
//attempting to export the file to the sd card
ExportDatabaseFileTask task = new ExportDatabaseFileTask();
task.execute();
07-14 21:48:00.903: E/DatabaseUtils(814): Writing exception to parcel
07-14 21:48:00.903: E/DatabaseUtils(814): java.lang.SecurityException: Permission Denial: get/set setting for user asks to run as user -2 but is calling from user 0; this requires android.permission.INTERACT_ACROSS_USERS_FULL
07-14 21:48:00.903: E/DatabaseUtils(814): at com.android.server.am.ActivityManagerService.handleIncomingUser(ActivityManagerService.java:14608)
07-14 21:48:00.903: E/DatabaseUtils(814): at android.app.ActivityManager.handleIncomingUser(ActivityManager.java:2258)
07-14 21:48:00.903: E/DatabaseUtils(814): at com.android.providers.settings.SettingsProvider.call(SettingsProvider.java:663)
07-14 21:48:00.903: E/DatabaseUtils(814): at android.content.ContentProvider$Transport.call(ContentProvider.java:325)
07-14 21:48:00.903: E/DatabaseUtils(814): at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:275)
07-14 21:48:00.903: E/DatabaseUtils(814): at android.os.Binder.execTransact(Binder.java:404)
07-14 21:48:00.903: E/DatabaseUtils(814): at dalvik.system.NativeStart.run(Native Method)