UE5.1 on Android - Permission Required, You must aporove this permission in App Settings: Storage

Hi all, i am completely stuck for a day. When i package my game for Android for shipping and distribute it for internal test with Google Play Console, the game does not start. Instead a Dialog pops-up: Title: Permission Required / Text: You must approve this permission in App Settings: Storage / Buttons: Seetings, Quit.

Android Version 13 (Samsung Device)

I thought this was triggered by a SaveGame Function in my Blueprint, but when i disconnected this functionality, the problem was still there.
I also tried with declaring android.permission.WRITE_EXTERNAL_STORAGE and android.permission.READ_EXTERNAL_STORAGE in PRoject Settings (Extra Permissions) and checked “UseExternalFilesDir for UnrealGame files”. I also tried with packaging for Development, same thing.

Help really appriciated! Whising you all the best and a great start to 2023!

The game worked well with quickLaunch on the same device.

5 Likes

Same problem bro, Can someone help us please !!

Edit 01/01/2023: I tried to remove “android.permission.WRITE_EXTERNAL_STORAGE” and “android.permission.READ_EXTERNAL_STORAGE” but still doesn’t work

1 Like

Bro, i find a solution
Try to put you “Target SDK Version” parameter to 31

1 Like

I will try this, thank you @anonymous_user_8799b80e ! What did you put the ndk version to (could you send a screenshot of your project settings?) Have a great evening!

this doesn’t work for me. can I ask you for a screenshot of the settings of your android studio … and so are the settings for android in the project? I will be very grateful!

1 Like

Sure


Same problem , UseExternal is checked and TArget SDK 33 , asks permission

1 Like

Now This!
"From August 31, 2023, if your target API level is not within 1 year of the latest Android release, you won’t be able to update your app.

To continue making updates to your app, ensure your app targets Android 13 (API level 33)."

anyone got the solution?
I’ve read & write permission screen but it is not prompting on my Android 13 device (Samsung ) . I’ve set target API 33 as per the new requirement. All my previous games are not saving anymore. :smiling_face_with_tear:

Edit: anyone still have this issue, I’ve got solution on thin thread:

Up the discussion, “Target SDK Version parameter to 31” is NOT a solution, Google Play demands to use API 33, but with API 33 the game is broken.

Ok, I did change a ManifestRequirementsOverride.txt file and it seems like the issue is fixed (at least on my android 13 there is no poput window anymore) will wait for the Google Play to approve and see if they find an issue.

Go to project folder to \Build\Android and make there ManifestRequirementsOverride.txt file with the content:

<uses-sdk android:minSdkVersion="9" android:targetSdkVersion="33" />
android.permission.WRITE_EXTERNAL_STORAGE
android.permission.READ_EXTERNAL_STORAGE

Did check, savings are working, but I did a test only by deploying .APK to the phone, not through the Google Play.

Will update the post if something is wrong.

7 Likes

we need to sue google for being and absolute bully towards devs, then, with the money we get, we buy google, then we make it our play ground, amen.

2 Likes

@Stkopp do we just need to make a .txt file on Build\Android location in order to make it work ?


like this

yes, simple .txt file with content inside, as I showed earlier. You can also put any other desired permissions in this file as well.

In their defence I would say that Google is following the strict rules of the countries. Google has to do such stupid updates to show the EU or other ones that they are “protecting people’s personal data”.

I also hate when my app is suddenly removed from the store because of some labuda at Google but we have no alternatives here, alas.

1 Like

Yes, It is that simple

Just wanted to clarify, So in order for people to be able to save on Android 13 and 14, all you have to do is add this file and all problems will be gone?

I just don’t understand, why do yo u need to add those permissions again when they are already in the Project settings as well as can be added in the blueprint?

The reason i am asking is because in order to be able to save in Android 10 - 11 - 12 there was a solution posted here:

So why add this again?

Can you please explain a bit what is the reasoning behind adding this file?

yeah, i was just joking XD, your right, they should atleast give us a warning before ruining everyones day

Hi guys. Just had the same problem and found a quick solution. If you want to check it out here it is in another topic about this problem: FIX

2 Likes

Sorry I can not describe why this works, I guess that the UE has some SDK limit buildin (if you check the settings for your project you can find that the target SDK ends on 31 for UE5.1) while the UE builds a game it send the info to gradle and tell “no matter what user sets, my max is 31”, that is why we need a manifest, the manifest file is the most important file for the gradle and it should follow what the manifest say.

This is not the right solution. The ManifestRequirementsOverride.txt file will overwrite all existing permissions, but you need to add missing permissions instead of overwriting them. For this purpose, the Project Settings section has a special field “Extra Permissions”, where you can add permissions.
If you target API 33 (Android 13) or higher, you must add these permissions:

1 Like

Hello good day sir, I am targeting SDK 34 android version 14 when I uploaded my game to the Google console it gives me an error that deals with foreground permission here is the screenshot on the red dot mark

Please can this fix you just gave be able to solve this for me too