Hello guys!
I’ve checked the source code for UE5.7, and it seems that Epic has fixed the files that were causing the issue!
I don’t know yet if IAPs will work, I’m currently uploading a shipping build on the Play Console and I’ll try when the app is approved.
Quick guide to fix all the errors you may encounter:
- Java 21
- NDK 27.2 (not the 27.0, it doesn’t work)
- Disable the plugin “Online Subsystem Google”. It is now totally obsolete, you need to use the “Online Subsystem Google Play” plugin now.
- The “Support admob” feature is a bit broken. Go to “Engine\Source\Runtime\Advertising\Android\AndroidAdvertising” and replace the file “AndroidAdvertising_APL.xml” with this one.
- Go to “UE_5.7\Engine\Build\Android\Java\gradle\app” and open build.gradle. At the very end under “dependencies”, add these 2 lines:
def billing_version = “7.1.1”
implementation “com.android.billingclient:billing:$billing_version”
- You don’t need the AndroidManifestOverride.txt anymore. All default authorizations have been removed.
- If you had “Extra tags for manifest node”, you need to remove them or the engine will refuse to compile.
I’ll keep you up-to-date!
Update : IAPs still don’t work. But at least the 5.7 version is compliant with the new Google Play rules like the 16KB memory pages.
Update 2 : IT WORKS GUYS! IAP ARE NOW WORKING ON UNREAL 5.7!
SOLUTION:
In “Engine\Plugins\Online\Android\OnlineSubsystemGooglePlay\Source”, you have a file called “OnlineSubsystemGooglePlay_UPL.xml”.
Inside, you have this:
<setBoolFromProperty result="bSupportsInAppPurchasing" ini="Engine" section="OnlineSubsystemGooglePlay.Store" property="bSupportsInAppPurchasing" default="false"/>
The thing is, usually you are supposed to set this value on true or false inside the file “AndroidGame.ini” of your project. That’s what the official documentation always said.
I don’t know when it stopped working or even if it was related with the other issue, but: you just have to set the default value on “true” directly in the “OnlineSubsystemGooglePlay_UPL.xml” file.
Create a shipping build, upload it on Google Play… and enjoy the IAPs!
Note that it will only work in Closed Testing, Open Testing and Production. It won’t work in Quick Launch or in internal sharing.
Let me know if it worked for you!