首先安装插件:cordova-plugin-android-permissions
首先在app.module.ts里面引入
import { AndroidPermissions } from '@ionic-native/android-permissions';
@NgModule({
declarations: [AppComponent],
entryComponents: [],
imports: [BrowserModule, IonicModule.forRoot(), AppRoutingModule],
providers: [
StatusBar,
SplashScreen,
AndroidPermissions,
{ provide: RouteReuseStrategy, useClass: IonicRouteStrategy }
],
bootstrap: [AppComponent]
})
export class AppModule {}
然后在我的logonController.js里面加入对权限的判断(部分引用网上的代码)
document.addEventListener("deviceready",onDeviceReady,false);
function onDeviceReady() {
new Promise(function (resolve, reject) {
var permissions = cordova.plugins.permissions;
var list = [
permissions.CAMERA,
permissions.READ_EXTERNAL_STORAGE,
permissions.WRITE_EXTERNAL_STORAGE,
permissions.READ_PHONE_STATE
];
permissions.requestPermissions(list, function(status) {
resolve(status)
}, function () {
reject()
})
}).then(function(status){
navigator.mediaDevices.getUserMedia({
//这里这几配置
}).then(function(msg){
//这里就可以做你想做的事了
}).catch(function(err) {
/* 处理error */
console.log(err);
});
}).catch(function (error) {
//获取权限失败!!!
alert('权限获取失败'+error)
})
}