After examining this YoYoGames page about IAP's on Android I implemented the default code from the GooglePlayServices package from the marketplace.
When calling the function GPBilling_PurchaseProduct() in the Left Mouse Press Event I get this error:
Does anyone else have this error?
I have:
Set up a store presence for the game, uploaded an APK
Set up IAPs for the game on the store app console
Add the required extension to GameMaker Studio 2
05-19 23:47:55.541 21145 21245 I yoyo : Calling to purchase gems_1
05-19 23:47:55.541 21145 21245 I yoyo : InvocationTargetException thrown trying to call method GPBilling_PurchaseProduct on GooglePlayBilling
05-19 23:47:55.541 21145 21245 I yoyo : Target exception: Attempt to invoke interface method 'java.util.Iterator java.util.List.iterator()' on a null object reference. Cause: null. Stack trace:
05-19 23:47:55.541 21145 21245 I yoyo : java.lang.NullPointerException: Attempt to invoke interface method 'java.util.Iterator java.util.List.iterator()' on a null object reference
05-19 23:47:55.541 21145 21245 I yoyo : at com.svrij22.dozr2.GooglePlayBillingService.purchaseSku(GooglePlayBillingService.java:468)
05-19 23:47:55.541 21145 21245 I yoyo : at com.svrij22.dozr2.GooglePlayBillingService.purchaseCatalogItem(GooglePlayBillingService.java:500)
05-19 23:47:55.541 21145 21245 I yoyo : at com.svrij22.dozr2.GooglePlayBilling.GPBilling_PurchaseProduct(GooglePlayBilling.java:153)
05-19 23:47:55.541 21145 21245 I yoyo : at java.lang.reflect.Method.invoke(Native Method)
05-19 23:47:55.541 21145 21245 I yoyo : at com.yoyogames.runner.RunnerJNILib.CallExtensionFunction(RunnerJNILib.java:1179)
05-19 23:47:55.541 21145 21245 I yoyo : at com.yoyogames.runner.RunnerJNILib.Process(Native Method)
05-19 23:47:55.541 21145 21245 I yoyo : at com.svrij22.dozr2.DemoRenderer.onDrawFrame(DemoRenderer.java:508)
05-19 23:47:55.541 21145 21245 I yoyo : at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1582)
05-19 23:47:55.541 21145 21245 I yoyo : at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1281)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_AcknowledgePurchase(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_AddProduct(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_AddSubscription(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_ConnectToStore()
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_ConsumeProduct(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_GetStatus()
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_Init()
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_IsStoreConnected()
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_PurchaseProduct(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_PurchaseSubscription(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Purchase_GetOriginalJson(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Purchase_GetSignature(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_Purchase_GetState(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_Purchase_VerifySignature(java.lang.String,java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_QueryProducts()
05-19 23:47:55.541 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_QueryPurchases(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_QuerySubscriptions()
05-19 23:47:55.541 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetDescription(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetFreeTrialPeriod(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetIconUrl(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetIntroductoryPrice(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetIntroductoryPriceAmountMicros(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetIntroductoryPriceCycles(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetIntroductoryPricePeriod(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetOriginalJson(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetOriginalPrice(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetOriginalPriceAmountMicros(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetPrice(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetPriceAmountMicros(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetPriceCurrencyCode(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetSku(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetSubscriptionPeriod(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetTitle(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetType(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_IsRewarded(java.lang.String)
When calling the function GPBilling_PurchaseProduct() in the Left Mouse Press Event I get this error:
Does anyone else have this error?
I have:
Set up a store presence for the game, uploaded an APK
Set up IAPs for the game on the store app console
Add the required extension to GameMaker Studio 2
05-19 23:47:55.541 21145 21245 I yoyo : Calling to purchase gems_1
05-19 23:47:55.541 21145 21245 I yoyo : InvocationTargetException thrown trying to call method GPBilling_PurchaseProduct on GooglePlayBilling
05-19 23:47:55.541 21145 21245 I yoyo : Target exception: Attempt to invoke interface method 'java.util.Iterator java.util.List.iterator()' on a null object reference. Cause: null. Stack trace:
05-19 23:47:55.541 21145 21245 I yoyo : java.lang.NullPointerException: Attempt to invoke interface method 'java.util.Iterator java.util.List.iterator()' on a null object reference
05-19 23:47:55.541 21145 21245 I yoyo : at com.svrij22.dozr2.GooglePlayBillingService.purchaseSku(GooglePlayBillingService.java:468)
05-19 23:47:55.541 21145 21245 I yoyo : at com.svrij22.dozr2.GooglePlayBillingService.purchaseCatalogItem(GooglePlayBillingService.java:500)
05-19 23:47:55.541 21145 21245 I yoyo : at com.svrij22.dozr2.GooglePlayBilling.GPBilling_PurchaseProduct(GooglePlayBilling.java:153)
05-19 23:47:55.541 21145 21245 I yoyo : at java.lang.reflect.Method.invoke(Native Method)
05-19 23:47:55.541 21145 21245 I yoyo : at com.yoyogames.runner.RunnerJNILib.CallExtensionFunction(RunnerJNILib.java:1179)
05-19 23:47:55.541 21145 21245 I yoyo : at com.yoyogames.runner.RunnerJNILib.Process(Native Method)
05-19 23:47:55.541 21145 21245 I yoyo : at com.svrij22.dozr2.DemoRenderer.onDrawFrame(DemoRenderer.java:508)
05-19 23:47:55.541 21145 21245 I yoyo : at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1582)
05-19 23:47:55.541 21145 21245 I yoyo : at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1281)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_AcknowledgePurchase(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_AddProduct(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_AddSubscription(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_ConnectToStore()
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_ConsumeProduct(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_GetStatus()
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_Init()
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_IsStoreConnected()
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_PurchaseProduct(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_PurchaseSubscription(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Purchase_GetOriginalJson(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Purchase_GetSignature(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_Purchase_GetState(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_Purchase_VerifySignature(java.lang.String,java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_QueryProducts()
05-19 23:47:55.541 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_QueryPurchases(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_QuerySubscriptions()
05-19 23:47:55.541 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetDescription(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetFreeTrialPeriod(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetIconUrl(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetIntroductoryPrice(java.lang.String)
05-19 23:47:55.541 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetIntroductoryPriceAmountMicros(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetIntroductoryPriceCycles(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetIntroductoryPricePeriod(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetOriginalJson(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetOriginalPrice(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetOriginalPriceAmountMicros(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetPrice(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetPriceAmountMicros(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetPriceCurrencyCode(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetSku(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetSubscriptionPeriod(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetTitle(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public java.lang.String com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_GetType(java.lang.String)
05-19 23:47:55.542 21145 21245 I yoyo : Found method public double com.svrij22.dozr2.GooglePlayBilling.GPBilling_Sku_IsRewarded(java.lang.String)