I built my unity android mobile game and put the APK on my phone to test, I get the following message:
“This app isn’t compatible with the latest version of Android. Check for an update or contact the apps developer.”
I was using Unity 2022.3.5f1. Upgrading to the latest version LTS version of Unity (2022.3.16) and downloading the android SDK still didn’t work with target API in player settings set to automatic(highest installed)
I manually set the target API to the highest one (in my case level 34, which is android 14), and then build my game. This prompted Unity to update my android SDK because I did not have that target API installed.
However, this still did not fix the issue. Every time I download the SDK on my phone I get the error message, which only goes away if I click “ok”. Otherwise it shows up every time I open the app. The game still works regardless, but I fear that this error means it wont work on the play store.
Edit: I believe I have found the solution. When the scripting backend is set to Mono, the ARM64 checkbox is grayed out, because Mono does not support 64 bit in Unity. Since modern phones run on 64 bit, you will get the error. The fix is to set scripting backend to IL2CCP and make sure the ARM64 box is checked. Maybe Unity should set this to the default in the editor to avoid future confusion.
I am having the exact same issue. Plus Resource.Load does not work correctly any more.
Phone: Galaxy A52s with Android 14 (One UI 6.0)
Unity 2022.3.16 on Apple Silicon
Also, if I manually set target API level to 34 (Android 14), the app crashes a few seconds into launch. The app starts with API level 33, but then I get this incompatible-popup plus as written, Resources.Load does not work.
I’m also using a Samsung device, specifically a Galaxy S21 running android 14. I believe I have found a way to fix the error message regarding the game not being compatible with the latest version of android, although I’m not sure about your other issue.
These are the steps I did in order, but I’m not sure how exactly I fixed the problem:
I set my target API specifically to level 34, then built my game.
I got a message to update my android sdk since I didn’t have level 34 installed, but updating it did not fix the issue
I deleted every single version of the Unity editor I had installed and downloaded the latest LTS with the android modules.
I upgraded my Unity project to this version (2023.3.16f1)
Build Settings → Player Settings → Other Settings
Minimum API Level → set to lowest
Target API Level → set to highest
Scripting Backend → set to IL2CPP
Target Architectures → set to ARMv7 [ v ] and ARM64 [ v ]
6. I built my game and it failed with a whole bunch of errors.
5. I built it again and it worked with no errors for some reason.
I believe that step 5 is the one that solved the issue(Scripting backend and target architectures). I also opened Android Studio somewhere along the process but I closed it after doing nothing, but it may be possible that it helped fix the issue. Another thing to note is that before the steps I mentioned, I updated a copy of my game to the latest LTS version with the android modules, but when I went into the android SDK folder, the date modified on some of the files were from a couple days ago. I hope this helps.
I get the same error message using Unity 2022.3.8f1
Min API: 22
Target: 34
“This app isn’t compatible with the latest version of Android. Check for an update or contact the apps developer.”
But when lowering the target API level to 22, I get build errors:
" UnityException: Target Android SDK not installed
Android SDK does not include your Target SDK of 22.
Please use the Android SDK Manager to install your target SDK version. Restart Unity after SDK installation for the changes to take effect."
I already reinstalled the editor through Unity Hub but same results. This feels like some API level are not properly installed/setup and the editor does not prompt to fix it.
1/ Setting low target API
I set the target api to 22 and deleted the installed API installed in Unity\Hub\Editor\2022.3.8f1\Editor\Data\PlaybackEngines\AndroidPlayer\SDK\platforms
Unity prompted me to install the 26 API (!) which I did. The build still failed but now I can’t build at all (gradle fail).
2/ Clean-up
I uninstalled everything related to Android SDK: android studio and every unity version I had installed (too many :P)
I also cleaned the project’s Library folder.
I reinstalled the latest version of LTS for 2022 (2022.3.17f1) and noticed that the Android SDK platform 31 and 32 were on the install list.
First build failed as SDK files were read-only. The log also mention that this gradle version don’t officially support 33.
From someone else on this forum I set the SDK folder to full access for all users, et to API target 32 annnnd I got another error message (sigh)
3/ Remove mobile package
Not sure if something I did before also helped but I removed the Mobile package and the game started properly.
It might be two issues affecting each other but I am pretty sure this is a tool-side problem (gradle? Mobile package?)
Hi Jalon
Thank you for sharing your experience in resolving the build issues. I’ve encountered similar challenges and found your insights helpful.
I’m curious about the step “3/ Remove mobile package” that you mentioned. Could you please provide more detailed instructions on how to remove the Mobile package from the Unity project? I’m not quite sure where to find this option in the Unity Editor, and any guidance you could offer would be greatly appreciated.
Just updated my phone and now the game I’m working on states no longer latest version not compatible (but will allow me to run it) I tried increasing API to latest this tells me to install SDK update and to click. After doing so causes gradel fails even on restart. So I have located latest SDK folder update, deleted. Uninstalled unity editor & reinstalled without tools then added after. Also unchecked visual studio 2019 as I’m using an older version. I’m also using the hub. Tried a
Fresh install all reset. No update just back to where I started but can at least build. Seems like something needs updating in Unity so having to remain on the old SDK.
**Update:
I managed to fix by starting over the process of increasing the API android version to match my version in player settings, when prompted to download SDK this time made sure not to click off the screen. The build starts now works fine no incompatible message.