Android and Piracy

Hi All,

Just a couple of questions…

For anyone that has released an app on Google Play. How do you feel about piracy and how its handled? Do you think there should be some form of DRM for apks? Do you feel like the 2 hours return policy (used to be 15 mins) promotes piracy and taking advantage of the system?

I didn’t even know you could download an app from the Play store which sole purpose is to rip apks from downloaded apps. It seems to me that there is very little protection for the developer against such things, and no actions being taken against it. I understand that Android likes to be an open platform, and I appreciate the ease if being able to publish to it, but I can’t help but think more can be done.

My game (which I’m not going to link to here because that’s not what the post is about), is doing fairly well. It’s up there on the new paid charts and climbing. It’s only been out a week and a google search brings countless sites offering the free apk, hell there’s even YouTube ads for the free apk! Looking at my stats I have around 4500 active users yet only 250-300 purchases.

What are everyone elses experiences in the matter?

Thank!

Well it is the most pirated platform in the history of mankind so there’s that. You probably want to go with f2p. Unity’s done a few blog posts on the subject so why not give those a read?

1 Like

Thanks I took a look at those articles. I did hear that people were far more likely to purchase a ‘premium’ app on iOS than they are on Android. I might just see how it goes the next few weeks and then evaluate which model I should go with. But really my question was to see what peoples opinions/experiences are in the matter.

So the latest is I have approximately 15,000 active users and 1200 purchases. Of course, I’m happy the game is proving to be popular but I could really use that $$$! It might end up that I go the Ad supported route on android, purely because of these stats!

Those numbers are crazy. I had an idea of setting the game to be free but the user will have to buy it from inside the app with a in-app purchase. Don’t know if it will work…

If you implement it corretcly, yeah. Generally, if you want to get some money, go for in app purchases or adds. Piracy rate is horrible on playstore.

I guess the only problem with the “buy the game from inside the app” is people that will not read the description and then give a bad review “because the app is not free!”…

Theire plenty apps out there which does it that way. Some free lvls and the rest is payed via IAP.
The only Problem i can imagine is, that the IAP gets impleneted poorly and its possible to crack the app fast.

If you want to test how secure your implementation is. I would be glad to help you out 4free. Just create an test apk and send it. Got some experience when it comes to reverse engeneering Unity apps =)

Thanks! My current game is already all over the web so no point in implementing that but for my next game I will do something like the IAP.

That’s exactly what I was thinking of doing for my next app.

I am considering making a special double-encryption algorithm for my game that takes a key generated from the device information and a few other obscure things.

EDIT: Actually, I’m going to do that now, won’t belong… :smile:

That sounds interesting =)

If I had those numbers, I’d be happy with the 1:10 ratio for now. Let the game’s popularity grow, be patient, and cash in later.

Also-- what’s your game’s name? Are you not allowed to mention it on the forums or something? I wanna see what your hot new game is like! :smile:

If the number will generate on the first run, how will this prevent piracy? Pirated versions of the game will generate a number too. You’re the coding genius here so please explain :slight_smile:

Yeah, what imagoFX said. Won’t you just have a record of 15,000 GUIDs, and still not know which among them were generated by paid versions of your game?

It seems to me unless the Play Store has a system for handling serial numbers, you need to make players register. However, if they’ve already paid/not-paid, then registration doesn’t mean anything: pirates can register too. Maybe offer a free trial version, and then charge to unlock full features? Then you can collect your booty and register a user’s details at the same time.

Oh, my system’s different; I was able to plan out how it should work last night. (I am not revealing anything here though, simply to stop hackers getting a hold of this… :smile:) It essentially is a special key that ONLY generates if the game was purchased, of which is done by sending the user account ID to a PHP script upon purchase. Likewise, if a pirate tries to grab teh APK directly from the server, no key will generate!

EDIT: That assumes google play can run PHP scripts: can it do that when an APK is downloaded?

Where do you want to upload the PHP to? We obviously can only upload apk and images to the play store.

You can only host php files on your own server. And acess the php sript in app after the app gots downloaded, not upon. But you could check if the app gots downloaded via playstore in script and then upload to the php script on first run. But yeah, honestly, its quite difficult to protect it against hackers.

Ive tested many different solutions and tried to crack them. Ive found no solution that took longer than around an half an hour to crack… It may take longer if someone dont know how you protected it, but reverse engeneering on android isnt a big problem. So it may takes an extra hour, but still no problem to crack imho. Concentrate on making an great game. Release it with IAP and multiplattform (android&ios and may windows phone).

Well yes, I did know that the PHP itself can’t be hosted on google play servers. But what I wanted was the ability to have the PHP script invoked from it’s location by the Google play store when that purchase button is clicked.

And IAP? Urrgh… Get me away from that toxic liquid! :smile:

Ok people, I have found a good method of hiding some part of the process; using AES encryption on the generated keys! I have a working AES implementation, courtesy of this link here: C# AES 256 bits Encryption Library with Salt - CodeProject

I am yet to add the code that actually generates the keys used by the licensing system I’m building. on top of this; who want’s to help crack it when I’m finished? :smile: