Ionic cordova 相机不可用
Ionic cordova camera is not available
我想在我的应用程序中使用 QrScanner。所以我安装了
ionic cordova plugin add cordova-plugin-qrscanner
npm install --save @ionic-native/qr-scanner@beta
插件,然后我使用 ionic cordova 运行 浏览器,然后在我的手机中访问生成的 url。每当我尝试打开 qr 扫描仪时,它总是显示 camera is not available
。尽管我的手机有摄像头,但我在 android 和 ios 中都进行了测试,但结果是一样的。这是我的代码
this.qrScanner.prepare()
.then((status: QRScannerStatus) => {
if (status.authorized) {
// camera permission was granted
// start scanning
const scanSub = this.qrScanner.scan().subscribe((text: string) => {
console.log('Scanned something', text);
this.sharedAlertService.presentBasicAlert('Authorized', '', JSON.stringify(text));
this.qrScanner.hide(); // hide camera preview
scanSub.unsubscribe(); // stop scanning
});
} else if (status.denied) {
this.sharedAlertService.presentBasicAlert('Denied', '', 'No permission');
// camera permission was permanently denied
// you must use QRScanner.openSettings() method to guide the user to the settings page
// then they can grant the permission from there
} else {
// permission was denied, but not permanently. You can ask for permission again at a later time.
}
})
.catch((e: any) => this.sharedAlertService.presentBasicAlert('Error', '', JSON.stringify(e)));
在浏览器中访问二维码扫描仪的解决方案是什么?谢谢。
相机在浏览器中不受原生支持,因此您在原生使用它有点不走运。最好的办法是为浏览器创建模拟数据,它将模拟使用它,以及 return 虚拟数据。
Ionic 对此有 an article 更深入的解释。
我想在我的应用程序中使用 QrScanner。所以我安装了
ionic cordova plugin add cordova-plugin-qrscanner
npm install --save @ionic-native/qr-scanner@beta
插件,然后我使用 ionic cordova 运行 浏览器,然后在我的手机中访问生成的 url。每当我尝试打开 qr 扫描仪时,它总是显示 camera is not available
。尽管我的手机有摄像头,但我在 android 和 ios 中都进行了测试,但结果是一样的。这是我的代码
this.qrScanner.prepare()
.then((status: QRScannerStatus) => {
if (status.authorized) {
// camera permission was granted
// start scanning
const scanSub = this.qrScanner.scan().subscribe((text: string) => {
console.log('Scanned something', text);
this.sharedAlertService.presentBasicAlert('Authorized', '', JSON.stringify(text));
this.qrScanner.hide(); // hide camera preview
scanSub.unsubscribe(); // stop scanning
});
} else if (status.denied) {
this.sharedAlertService.presentBasicAlert('Denied', '', 'No permission');
// camera permission was permanently denied
// you must use QRScanner.openSettings() method to guide the user to the settings page
// then they can grant the permission from there
} else {
// permission was denied, but not permanently. You can ask for permission again at a later time.
}
})
.catch((e: any) => this.sharedAlertService.presentBasicAlert('Error', '', JSON.stringify(e)));
在浏览器中访问二维码扫描仪的解决方案是什么?谢谢。
相机在浏览器中不受原生支持,因此您在原生使用它有点不走运。最好的办法是为浏览器创建模拟数据,它将模拟使用它,以及 return 虚拟数据。
Ionic 对此有 an article 更深入的解释。