Enabling In-App Billing for Android causes app to fail to start

Hi, once enabled in Projucer my apps fail to start up and crash immediately.

I’ve looked a the tutorial and there doesn’t appear to be anything else needed.

This is also the case with DemoRunner.

thx

It looks like AIDL (which is what JUCE uses for the in-app purchases code on Android) has been deprecated and removed. We’ll look at adding support for the Google Play Billing Library but I suspect it’ll be a significant chunk of work so it’s hard to put a time estimate on it.

hi, ok. will it be at least possible to do the investigation so we can get a rough idea? I have an app ready to go that just requires this to be available on Android.

Also, just to confirm, the page that you linked to says deprecate and will be removed, implying it hasn’t been removed yet - so are you 100% sure this is the issue?

thx

Running the IAP demo in AS gives me the following error in logcat:

java.lang.ClassNotFoundException: Didn't find class "com.android.vending.billing.IInAppBillingService"

which implies to me that the deprecated library has been removed.

ok. thx

Hi, just wondered if you’ve had any chance to look into the amount of work this is and when we might get this functionality back?

thx

It’s a lot of work. I wouldn’t want to put a time estimate on it but it’s fairly high priority.

ok, thx for the update. will check in again soon.

it’s a shame they haven’t made an easier migration path - i’m guessing this has upset a lot of developers. it’s also a shame they haven’t left the old system in place long enough for people to migrate!

Hi Ed. Just checking in to see if there’s been any progress as of yet? thx

Hi Ed, any updates? Bit concerned that ADC is going to get in the way of this… thx

Unfortunately it’ll be at least until after ADC until we can take a look into it. For the time being are you able to build with an older version of Android Studio or toolchain?

That’s a bit disappointing. This is the 3rd major Android issue this year that has taken months to fix. It’s becoming a little frustrating that a supported platform is having major issues that are not a priority to fix. I know you guys are developing new functionality and are stretched, but tbh, if something that did work and is part of current accepted functionality stops working, I would think getting that back up and running would take priority over new development.

TBH, as you know, Android studio is a nightmare to begin with - I’m not sure I really want to open that rabbit hole of trying to install different versions and investigate builds - do you know if this is going to be easy? Can i run installs side by side or do I have to remove the current one? Do you know which version I would need to install?

thx

2 Likes

I believe you can do this, you’ll just need to re-name the .app when moving it to you applications folder so it doesn’t overwrite the existing one. As for the version, I’m not sure. It seems to have only stopped working recently so maybe a couple of versions back?

I’ve just gone back to 3.4.2 which was released in July and that still has the same problem. Do you suggest I go back further?

Just tried 3.4 and still crashes. Do I need to do something about supporting NDKs etc?

Hi Ed - now ADC is over, any chance of getting back on this? thx

1 Like

Any updates please? I’m really hoping this can get sorted this year…

2 Likes

Weekly ping hoping for some updates.

3 Likes

Hello. Any chance of getting any kind of update on the progress of this? 2 months ago I was really hoping to get this released by the end of the year.

I’m really starting to question Juce’s attitude towards tablet support at the moment as to be blunt, this year it has been pretty lacklustre and lacking.

1 Like

Sorry for the lack of response on this. There hasn’t been any significant progress on adding support for Google Play Billing and it won’t be done by the end of the year. However, from some experimenting this morning I was able to get a JUCE project using IAP built using the latest develop to run on an Android 10 device. In order to do this I completely uninstalled my Android Studio 3.5.3 installation using this guide and installed version 3.1.0 from here. Then I used this version of AS to build the project which ran without hitting the “class not found” exception. Oddly enough after uninstalling 3.1.0 and updating to the latest AS, I’m still able to build the project and get it running on devices. I realise this isn’t a permanent solution, but if you need to get a release out soon that includes IAP then this workaround should work.

1 Like

OK, in 027e12e we’ve just added support for the Google Play Billing library to replace the old, deprecated AIDL code. Please give it a test and let us know if there are any issues.

2 Likes