Forum Discussion
to_the_cosmic_end
4 months agoProtege
Extra runtime permission visible in App Settings
Hello, I am testing my app, and I only use WRITE_EXTERNAL_STORAGE for media access. However, in Headset Settings → Privacy & Security → Installed Apps → [my app], I see that three permissions have been added. My manifest looks like this:
<!--?xml version="1.0" encoding="utf-8" standalone="no"?-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" package="com.example.app" android:installlocation="auto">
<uses-permission android:name="android.permission.INTERNET" tools:node="merge">
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE">
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE">
<uses-permission android:name="android.permission.RECORD_AUDIO" tools:node="remove">
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO" tools:node="remove">
<uses-permission android:name="android.permission.READ_MEDIA_VIDEO" tools:node="remove">
<uses-permission android:name="android.permission.READ_MEDIA_IMAGES" tools:node="remove">
<uses-permission android:name="android.permission.ACCESS_MEDIA_LOCATION" tools:node="remove">
<uses-permission android:name="android.permission.READ_MEDIA_IMAGE" tools:node="remove">
<uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" tools:node="remove">
<application android:name=".AppDelegate" android:label="@string/app_name" android:networksecurityconfig="@xml/network_security_config" android:requestlegacyexternalstorage="true" android:icon="@mipmap/app_icon" android:allowbackup="false">
<activity android:theme="@style/Theme.AppCompat.DayNight.NoActionBar" android:configchanges="locale|fontScale|keyboard|keyboardHidden|mcc|mnc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|touchscreen|uiMode" android:launchmode="singleTask" android:name="com.unity3d.player.UnityPlayerGameActivity" android:excludefromrecents="true" android:exported="true" android:screenorientation="landscape">
<intent-filter>
<action android:name="android.intent.action.MAIN">
<category android:name="android.intent.category.LAUNCHER">
<category android:name="com.oculus.intent.category.VR">
</category></category></action></intent-filter>
<meta-data android:name="com.oculus.vr.focusaware" android:value="true">
</meta-data></activity>
<meta-data android:name="unityplayer.SkipPermissionsDialog" android:value="false">
<meta-data android:name="com.samsung.android.vr.application.mode" android:value="vr_only">
<meta-data android:name="com.oculus.supportedDevices" android:value="quest|quest2|questpro|quest3|quest3s" tools:replace="android:value">
<meta-data android:name="com.oculus.ossplash.background" android:value="black">
<meta-data android:name="com.oculus.telemetry.project_guid" android:value="xxx">
</meta-data></meta-data></meta-data></meta-data></meta-data></application>
<uses-feature android:name="android.hardware.vr.headtracking" android:version="1" android:required="true">
</uses-feature></uses-permission></uses-permission></uses-permission></uses-permission></uses-permission></uses-permission></uses-permission></uses-permission></uses-permission></uses-permission></manifest>and this is what I see in the app settings:
As you can see, the "Photos and videos" and "Music and audio" permissions are also listed, even though I only requested the "Storage" permission. In my testing, I also found that disabling the "Photos & videos" toggle causes my app to stop working, even if the "Storage" permission remains enabled.
I believe that seeing multiple permissions in the list may cause users to lose confidence and feel uncertain about granting them—especially "Music and audio," which is unrelated to my app.
1 Reply
Replies have been turned off for this discussion
- NemesisTWarlockProtege
append " tools:node="remove" " to remove a permission in your androidmanifest.xml.
Example:
<uses-permission android:name="android.permission.READ_MEDIA_AUDIO" tools:node="remove"/>EDIT: On second thought, your XML seems to be slightly malformed, which may be causing issues.
Here's mine, which has all the media permissions removed:<?xml version="1.0" encoding="utf-8" standalone="no"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:installLocation="auto"> <application android:label="@string/app_name" android:icon="@mipmap/app_icon" android:allowBackup="false"> <activity android:theme="@android:style/Theme.Black.NoTitleBar.Fullscreen" android:configChanges="locale|fontScale|keyboard|keyboardHidden|mcc|mnc|navigation|orientation|screenLayout|screenSize|smallestScreenSize|touchscreen|uiMode" android:launchMode="singleTask" android:name="com.unity3d.player.UnityPlayerActivity" android:excludeFromRecents="true" android:exported="true"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> <category android:name="com.oculus.intent.category.VR" /> </intent-filter> <meta-data android:name="com.oculus.vr.focusaware" android:value="true" /> </activity> <meta-data android:name="unityplayer.SkipPermissionsDialog" android:value="false" /> <meta-data android:name="com.oculus.ossplash.background" android:value="black" /> <meta-data android:name="com.oculus.telemetry.project_guid" android:value="xxxxxxxxx" /> <meta-data android:name="com.oculus.supportedDevices" android:value="quest2|questpro|quest3|quest3s" tools:replace="android:value" /> </application> <uses-feature android:name="android.hardware.vr.headtracking" android:version="1" android:required="true" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" tools:node="remove"/> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" tools:node="remove"/> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" tools:node="remove"/> <uses-permission android:name="android.permission.READ_MEDIA_AUDIO" tools:node="remove"/> <uses-permission android:name="android.permission.READ_MEDIA_VIDEO" tools:node="remove"/> <uses-permission android:name="android.permission.READ_MEDIA_IMAGES" tools:node="remove"/> <uses-permission android:name="android.permission.ACCESS_MEDIA_LOCATION" tools:node="remove"/> <uses-permission android:name="android.permission.READ_MEDIA_IMAGE" tools:node="remove"/> </manifest>
Quick Links
- Horizon Developer Support
- Quest User Forums
- Troubleshooting Forum for problems with a game or app
- Quest Support for problems with your device
Other Meta Support
Related Content
- 8 months ago
- 4 years ago
- 2 years ago