0

Not a "how to test in-app-billing" question!!

Initially, I did not think this limitation would cause me any grief:

enter image description here

However, now that my application is in production and I frequently find myself providing a live demo on my device to someone, I find this to be a large enough inconvenience that I need a workaround. It's embarrassing to inform a potential large customer, that I can't show them all features on this device because I am the main developer. They just hear Bla Blah blah - something this guy wrote doesn't work.

How do others go about using the in-app products on their own device for their own app? I'd rather not carry around another device. I tried adding a second account to my device but somehow Android/Google still knows it is tied to my account / I am the publisher (maybe because my Gmail address is listed as a recovery account?) I can think of a dozen ways to give myself a back door and make everything free, but all of those options open up potential security holes. At this point, I'm considering a special APK / Build that I will manually create and install on my device only that always returns "true" when checking if a product is purchased or not.

maplemale
  • 2,006
  • 21
  • 35
  • I think you can inject a small piece of code to check your device unique ids and enable all features for your device, obviously this can open security issues in case one has a rooted device they can reverse your apk and get that. Using proguard effectively can help to protect your unique id. – Rishabh Dugar Jan 02 '18 at 05:34
  • you can add your mail email address as "License Testing" and you will be able to purchase in-app in live app. Login to your Developer Console Account - > Click on Setting on left - >On Accounts Details Page you will see option to add License Testing. – Amod Gokhale Jan 02 '18 at 05:58
  • @AmodGokhale That does not apply to the publisher account. – maplemale Jan 02 '18 at 17:12
  • @RishabhDugar After a lot of searching, i'm starting to think that is the only way. But, like you said; a security issue. I am obfuscating the code and not super worried about reverse engineering. But, if what you are suggesting is a common thing, I can see this becoming a published unlock / work around hack should someone discover it. Another possibility is to put a key hash on the device in a specific location that unlocks stuff when it exists / matches. – maplemale Jan 02 '18 at 17:14

1 Answers1

1

The most common answer which most developers do is have a different account for publishing their app from their personal account. They then add their personal account as a user on the developer account For app publishing, the account has an awful lot of power. Creating a new gmail account to use for the developer console is not too hard.

So I might have nickssoftware@gmail.com as my Play Console account owner, and nick@gmail.com (both made up addresses) as the account on my phone. The Play Console account never gets added to any phone.

Nick Fortescue
  • 13,530
  • 1
  • 31
  • 37
  • I was attempting to use this method and 2 issues were blocking me. 1. You HAVE to select install from the web client for your second account. 2. There is a major lag between the web client an the registered devices list. https://stackoverflow.com/questions/36338950/android-in-app-purchases-with-multiple-accounts – maplemale Jan 10 '18 at 02:41
  • I don't understand your comment. What do you mean by "second account"? Please call them "personal account" and "app owner account" or something like that to clarify. The app owner account is never added to any devices. – Nick Fortescue Jan 10 '18 at 09:55
  • My personal account IS the app owner account. When we started this project, I began by simply logging into my personal account and paying to be a developer. As the business owner, I didn't initially see an issue with this. I understand now this may not have been the best way to set this up. Not sure it's worth the effort of opening a transfer request with Google to move the app to an account created for the sole purpose of owning the application. Though, since the app hasn't made a huge amount of money yet, maybe now is the time. – maplemale Jan 10 '18 at 19:23
  • Yes, I would argue doing the transfer now is the right time, and will solve your problems. – Nick Fortescue Jan 11 '18 at 10:30