How to Remove Unused permissions from AndroidManifest.xml

Please i noticed the following permissions were added to the AndroidManifest file during build

<uses-permission android:name="android.permission.WAKE_LOCK" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
    <uses-permission android:name="android.permission.CALL_PHONE" />

And my application doesn’t require CALL_PHONE neither does it require WRITE_EXTERNAL_STORAGE. During install it shows a red warning notice to user about CALL_PHONE and WRITE_EXTERNAL_STORAGE permission.

I would really love to remove this. I tried editing the manifest file but the changes are overriding during build. Please how can i achieve this?

The CALL_PHONE permission is added if you include "Fuse.Launcher" in "Packages" section of your .unoproj file. If you only need a particular sub-feature of InterApp, you should limit the package includes to one (or more) of the following:

Fuse.Launcher.Email
Fuse.Launcher.InterApp
Fuse.Launcher.Maps
Fuse.Launcher.Phone

Not entirely sure about the WRITE_EXTERNAL_STORAGE permission, but I believe it allows your app to be moved to external storage (as opposed to only be allowed to be installed on internal storage of the device). I’d recommend leaving that one.

As for manual editing of AndroidManifest.xml, you can still do that. After you do, it is however required to run the build.sh/build.bat script found in ./build/Android/Release/ relative to your app project. This rebuilds the APK file with the edited manifest.

Thank you so much Uldis for this wonderful and priceless information. I really appreciate.

Cheers