Files
UnrealEngineUWP/Engine/Build/Android/Java
Rafa Lecina 991f7d00cc - Update Google Billing Library to v5 and fix or mitigate several issues found before the update
Included update and fixes together because the update was affecting how the fixes would be implemented

UE-160024:
 - Updated Google Billing Library to v5.
 - Many types and methods changed.
 - Cleaned up unused/non accessible/non needed methods and interfaces from GooglePlayStoreHelper.java, GameActivity.java.template and additions from OnlineSubsystemGooglePlay_UPL.xml
 - Used a uniform code style on GooglePlayStoreHelper.java (tried to be near the C++ guidelines)
 - Also follow C++ code guidelines and naming on the Java native functions implementation
 - Fixed support for GooglePlay pending transactions
 - General cleanup on OnlinePurchaseGooglePlay.h/cpp
 - Do not add validation information for pending purchases so they are not redeemable (thus not consumed accidentally)

UE-160021 and UE-160022
 - Use just one list of transactions to simplify handling them
 - Clear the list of transactions and fill it with the result of the query. GooglePlay always returns the full list of non consumed transactions (and the list of non consumable ones, but those are not currently supported by UE)
 - Added consume delegate to be able to remove consumed receipts

UE-160023:
 - Checked result of BillingClient.launchBillingFlow and notify the native side in case of failure

OI-3209:
 - When launch mode is set to single task in the manifest and the user moves to background and then to foreground using the Android launcher the onPurchasesUpdated listener reports BillingClient.BillingResponseCode.USER_CANCELLED with an empty list of purchases. Detect that as in progress purchase was cancelled

#jira UE-160021, UE-160022, UE-160023, UE-160024, OI-3209, UE-162461
#review @Bertrand.Carre, @Chris.Varnsverry, @Chris.Babcock
#preflight 630ddb31e54ec9d581788286
#9528

[CL 21737049 by Rafa Lecina in ue5-main branch]
2022-09-01 03:39:00 -04:00
..