Androidのsqlite dbに問題があります。しかし、私はインターネット上で簡単に研究をしたところ、問題はsqliteではなくシステムユーザーに関係していると思われます。私のアプリケーションは、db機能にアクセスするための許可されたユーザとして認識されません。私は、スタックオーバーフローで可能な提案されたソリューションを適用しようとしましたが、どれも違いを生じませんでした。これは、DB機能を使用しようとするたびに直面するLogCatです。権限拒否:これにはandroid.permission.INTERACT_ACROSS_USERS_FULLが必要です
12-14 02:35:17.721 2953-3355/? E/DatabaseUtils﹕ Writing exception to parcel
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
at com.android.server.am.ActivityManagerService.handleIncomingUser(ActivityManagerService.java:13082)
at android.app.ActivityManager.handleIncomingUser(ActivityManager.java:2038)
at com.android.providers.settings.SettingsProvider.callFromPackage(SettingsProvider.java:577)
at android.content.ContentProvider$Transport.call(ContentProvider.java:279)
at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:273)
at android.os.Binder.execTransact(Binder.java:388)
at dalvik.system.NativeStart.run(Native Method)
私は許可
android.permission.INTERACT_ACROSS_USERS_FULL
まだありませんサウンドを追加しようとしました。奇妙なことは、私がインターネットの許可を追加しようとしているときです。Android Studio 0.3(私が使用しているIDE)は、私が選択できる可能なパーミッションを示唆しています。しかし、INTERACT_ACROSS_USERS_FULLパーミッションに関しては、このパーミッションに関する考え方がないように振る舞います。私のテストデバイスは4.3で動作するSamsung S4です。
私はアンドロイドでdbを使用しようとしているのは私だけではないと思います。だから解決策があります。
本当にアプリケーションにINTERACT_ACROSS_USERS_FULL権限を追加できますか?
http://stackoverflow.com/questions/19756727/what-do-i-do-about-this-requires-android-permission-interact-across-usl-full – 5er
私はこの記事を数回見ました。しかし、それはどういう意味ですか?私のアプリにシステムと同じ署名を与えるにはどうすればいいですか? – gurkan
あなたは、クリエイターかそれらのシステムであるか、またはあなたのアプリに署名するよう説得する必要があります - どちらもほとんどの開発者にとって現実的ではありません。あなたが不必要に何かをやっているような気がします。マルチユーザーサポートの前日からの簡単なデータベースの例を作成しようとしましたか? –