简体   繁体   English

ionic 4: android 权限在 prod 构建后不起作用

[英]ionic 4: android permission not working after prod built

I am using @ionic-native/android-permissions.我正在使用@ionic-native/android-permissions。 My code in app.component.ts:我在 app.component.ts 中的代码:

this.androidPermissions.checkPermission(this.androidPermissions.PERMISSION.RECORD_AUDIO).then(
          (result)=>{   
       if(!result.hasPermission)
       {
         this.androidPermissions.requestPermissions(
           [this.androidPermissions.PERMISSION.RECORD_AUDIO, 
             this.androidPermissions.PERMISSION.GET_ACCOUNTS]
            ).then(()=>{
             // this.rootPage = HomePage;
             window.location.reload();
            });

   }
     });

It is working when I do :当我这样做时它正在工作:

ionic cordova run android离子科尔多瓦运行安卓

or或者

ionic cordova build android离子科尔多瓦构建android

or或者

ionic cordova build android --release离子科尔多瓦构建 android --release

But the app is not asking for permission if I add --prod.但是,如果我添加 --prod,该应用程序不会请求许可。 ie : IE :

ionic cordova run android --prod离子科尔多瓦运行 android --prod

or或者

ionic cordova build android --prod --release离子科尔多瓦构建 android --prod --release

So the device mic is not working for the app.所以设备麦克风不适用于该应用程序。

I had this issue, and i solved it by adding permissions to config.xml then, popup will show and ask client for permissions.我遇到了这个问题,我通过向 config.xml 添加权限解决了这个问题,然后弹出窗口将显示并询问客户端的权限。 add permissions to config.xml向 config.xml 添加权限

<platform name="android">
....
<config-file parent="/manifest" target="AndroidManifest.xml" xmlns:android="http://schemas.android.com/apk/res/android">
    <uses-feature android:name="android.hardware.microphone" android:required="true" />
    <uses-permission android:name="android.permission.RECORD_AUDIO" />
    <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />
</config-file>
....
</platform>

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM