我想在我的应用中使用相机插件。我请求了摄像头许可,但是在允许摄像头打开后
在后续设备上尝试 -Moto g4 plus 安卓7.0版
以下是离子信息
cli软件包:(C:\ Users \ username \ AppData \ Roaming \ npm \ node_modules) @ ionic / cli-utils:1.19.3 离子(Ionic CLI):3.20.1
全局软件包: 科尔多瓦(Cordova CLI):8.1.2(cordova-lib@8.1.1)
本地软件包: @ ionic / app-scripts:3.2.0 Cordova平台:Android 7.0.0浏览器5.0.4 离子框架:离子角3.9.2
系统: Android SDK工具:25.2.5 节点:v8.11.1 npm:5.6.0 作业系统:Windows 10
环境变量: ANDROID_HOME:C:\ android-sdk-win
其他: 后端:专业
以下是我的代码
openCamera(){
this.androidPermissions.checkPermission(this.androidPermissions.PERMISSION.CAMERA).then(
result => {
alert(result.hasPermission);
if(!result.hasPermission) {
this.androidPermissions.requestPermission(this.androidPermissions.PERMISSION.CAMERA)
.then( cam => {
alert('permission result '+ JSON.stringify(cam) );
this.capturingPicture();
})
.catch( error => {
alert('permission error occured '+ JSON.stringify(error) );
});
} else {
this.capturingPicture();
}
},
err => {
this.androidPermissions.requestPermission(this.androidPermissions.PERMISSION.CAMERA);
});
}
正在显示图片功能警报,但设备相机未打开。
capturingPicture(){
alert('capturingPicture');
const options: CameraOptions = {
mediaType: this.camera.MediaType.PICTURE,
quality : 75,
destinationType : this.camera.DestinationType.DATA_URL,
sourceType : this.camera.PictureSourceType.CAMERA,
allowEdit : true,
encodingType: this.camera.EncodingType.JPEG,
targetWidth: 300,
targetHeight: 300,
saveToPhotoAlbum: false
};
this.camera.getPicture(options).then((imageData) => {
let base64Image = 'data:image/jpeg;base64,' + imageData;
alert('image data => '+ imageData);
}, (err) => {
// Handle error
alert('get picture error => '+ err);
});
}
根据文档,编写了代码,但是仍然没有得到是代码/插件/版本/ OS等问题。 请以此指导我。
谢谢。
答案 0 :(得分:1)
使用以下命令在ionic 3中安装相机
npm install --save @ ionic-native / camera @ 4