Failed to open Descriptor File - UE4.27 - Android Target 30

Hi is there … please anyone! Who knows a solution for the Descriptor failed to open … problems … ?

I tried everythings … requesting permissions, added the permissions in the project settings etc. etc. nothing works!
This is an Android 11 problems (maybe also android 10 idk), because on Android 9, i dont have any problems. I can temp. fix this problem when i package my game for distribtution / as shipped … but i have a little crash problem on my app and i cant see logs because it is builded as shipped version

I tried it on a Oneplus 3 (Android 11), Oneplus 3 (Android 9 - works), Poco F2 Pro (Android 11), Redmi Note 9 (Android 11), Oneplus 1 (Oneplus 9/10)



If anyone know something … maybe a fix, please help me
The app works but without logs, i cant fix problems

2 Likes

Update:
I tested it on a computer which had never installed before the unreal engine and android studio, i installed:

  • Android Studio 3.5.3
  • Unreal Engine 4.27
  • Visual Studio 2019 Community
  • Android SDK 30
  • Android NDK r21d

I created an app with just a Main Menu (2 Button), with the current options and requirements listed on the UE4.27 Documentation
It’s not working, i reproduced it as i said on a new PC

Update 2:
Since it’s working on the UE4.26, i reported it as Engine Bug… - i reproduced this twice
Would be interesting if anyone can use the UE4.27 with android target 30 ?

I am also facing the “Failed to open descriptor file” error, on both UE4.26 and UE4.27 when targeting Android SDK 30, which is a real problem, as the Google Play Store requires new app uploads to target SDK 30.

It is a little unclear from your comments, but did you manage to get a version working that targeted SDK 30, or did you have to resort to targeting a previous version?

I use right now the Unreal Engine 4.27.(1) (Source) and it’s not working perfectly - my work arround is to upload my app directly with the SDK30 and as AAB (& Distribution build) to the internal track in the google play console board - when you install your app from there, you dont get problems

Here you can see some of my project settings which i using right now, its a tutorial because more people facing these issues with SDK30 :frowning: :

if you dont know how to use AAB Files and or you get a xapk validation error, I solved it here:

Hey, I noticed you got android studio 3.5.3 installed, this might be the cause of your error?
Make sure to always look at Platform SDK upgrades in release notes of new Engine versions (Unreal Engine 4.27 Release Notes | Unreal Engine Documentation)

It usually show recommended / minimum supported versions of different platform tools.
Currently for UE4.27 it says

  • Android
  • Android Studio 4.0
  • Android NDK r21e
    • NDK r20b is also supported to address compatibility issues on some low-end devices.

Hope it helps!

I noticed that my apps open fine when they’re downloaded from the playstore, but everytime I want to install from my pc I get that descriptor file missing error

1 Like

I got this to work by targeting to Android 30 in android settings since that’s required by google now but using android-29 in android ndk settings with matchndk

I got that error one week before, so what I did is make sure that:

UE: 4.27.2
AS: 4.0
SDK: 32.0.0
NDK: 21.3.6528147
JDK: 1.8.0_77

Project setting>Platforms>Android>
Minimum SDK V… = 19
Target SDK V… = 29

It’s working 100% fine with me on both way:
1- Launch options>Devices>then I choose my android mobile
2- I package to Android Multi> I transfer install file to android folder in my phone, then I install the game manual.

1 Like

Thank you!

Previously my target SDK V was 32 and after launch I got descriptor error, then I changed it to 29 and it works!

i changed my ndk version to solve the problem

I know its a really frustrating error. I’ve invested more than 16hours(2 working days) in the problem but luckily, I hit a jackpot. To be honest I am novice to Unreal and how it works behind the scenes but what I can say for sure is that it tries to create a uproject file which contains important data needed for game to function properly. The catch is it creates a uproject file in a location which it cannot access because it has read and write permissions but not the permission to manage them. This means that android system allows the app to read the file and also create a new file, but what it doesn’t do is allow it to modify the file because it needs modification permissions. Also, since management permissions are made sensitive since android 11(Api 30), this makes it tough for the app to go through its usual onboarding process.
(All the things I wrote above are just my speculation and as I already said I am novice here, so I’ll appreciate every correction anyone makes)
Coming to my approach, I tried a lot of things suggested by people on various forums about fixing this issue including “Setting Package Everything Inside APK to True” or “Allow Large Obb Files” and what not. None of them worked for me. What worked was adding a permission to allow the app to manage external storage. This can be achieved by-
Going to Edit>Project Settings>Android>Add an Extra Permission
Type there (without quotes)…“android.permission.MANAGE_EXTERNAL_STORAGE”.
Then package the app as usual and install it to your development android device.
If the issue is fixed without any further steps, Voila you hit the jackpot before me. Sadly, I was not so lucky, so I had to manually go to Settings app of my phone and search for “All Files Access” and then search for the app you just installed and then allow it.
Oh, it indeed is a very long, tiring and taxing step; but as they say…The more the friction on Diamonds, the more the lustre…
Please let me know if you have anything to discuss with me or anything to criticize or ask for…
Hope this helps and ends the search for many others like me…

1 Like

this did it for me:

“android.permission.MANAGE_EXTERNAL_STORAGE” allowed me to allow full access to files instead of ‘only media’ in the app settings of my phone. It launches with the same error, but once you enable full permissions from settings, and launch the already installed app, it works fine onward.