我正在尝试开发一个使用相机功能的PhoneGap
应用程序。我正在关注https://build.phonegap.com/plugins/768的插件文档,但没有运气。每当我尝试使用该功能时,我都会收到错误" ReferenceError:未定义摄像头"当我在我的Android设备上构建和测试时。
以下是我的index.html的主管:
<script type="text/javascript" src="phonegap.js"></script>
<script type="text/javascript" src="cordova.js"></script>
以下是我用来使用相机功能的脚本:
<script>
function take_picture(){
try{
navigator.camera.getPicture(cameraSuccess, cameraError, {
quality: 50,
destinationType: Camera.DestinationType.DATA_URL
});
}catch(e){
alert(e);
}
}
function cameraSuccess(imageData){
try{
$("#camera_image").attr('src', imageData);
}catch(e){
alert(e);
}
}
function cameraError(message){
try{
alert('Failed because: '+message);
}catch(e){
alert(e);
}
}
</script>
由于我使用的是PhoneGap Build
,因此这里是我正在使用的config.xml标记:
<gap:config-file platform="android" parent="/manifest">
<uses-permission name="android.permission.CAMERA" />
</gap:config-file>
<feature name="http://api.phonegap.com/1.0/camera"/>
<feature name="Camera">
<param name="android-package" value="org.apache.cordova.CameraLauncher" />
<param name="ios-package" value="CDVCamera" />
</feature>
答案 0 :(得分:4)
我有同样的问题,我在三个步骤中解决了它
我只使用了cordova.js并删除了所有phonegap.js
<script type="text/javascript" charset="utf-8" src="cordova.js"></script>
您必须使用命令行安装摄像头插件; xml只能起作用
cordova plugin add org.apache.cordova.camera
您使用的软件包是org.apache.cordova.CameraLauncher
它是错误的并且会给您NullPointer异常。
可以像这样包含正确的包
<feature name="Camera">
<param name="ios-package" value="CDVCamera" />
<param name="android-package" value="org.apache.cordova.camera.CameraLauncher" />
</feature>
试一试! 谢谢:))