Phonegap 3.3.0与相机插件权限错误

时间:2014-02-15 14:56:56

标签: plugins cordova permissions camera

我使用cordova命令行创建了一个项目并添加了相机插件。 并添加一些设置(http://cordova.apache.org/docs/en/3.3.0/cordova_camera_camera.md.html#Camera) 我使用我的galaxy s4在该页面上编译并执行了一个示例,但它不起作用。

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:13084)
        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)

所以我在github(https://github.com/heavysixer/phonegap-camera-sample)上尝试了另一个例子。 它没有错误。

上面的例子有什么问题?

2 个答案:

答案 0 :(得分:1)

我有完全相同的错误。 似乎问题出在Android Manifest文件中。 您需要包含以下内容才能使相机应用正常工作

<uses-permission android:name="android.permission.CAMERA" />
<uses-feature android:name="android.hardware.camera" />
<uses-feature android:name="android.hardware.camera.autofocus" />

答案 1 :(得分:0)

for android:

终端命令:

$ phonegap local plugin add org.apache.cordova.camera
$ phonegap local plugin add org.apache.cordova.media
$ phonegap local plugin add org.apache.cordova.media-capture


(in app/res/xml/config.xml)
    <feature name="Camera">
        <param name="android-package" value="org.apache.cordova.camera.CameraLauncher" />
    </feature>


    (in app/AndroidManifest)
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />