I'm in the process of converting some flash apps into air apps for use on android market. These apps will be paid for, commercial apps, and as such need to be copy protected *somehow*.
So far I've read into the LvL license manager at android market, which is a purely java based API, and as such I can't think of any way to integrate into that into an actionscript app. I've also contact android market directly and they've confirmed that it's the app itself which must manage the license protection.
Has anyone any ideas how to stop the apps being pirated? Anyone know if the following ideas are possible?
- adobe add license manager support to actionscript and hook in and use that? (I can't tell but it looks like adobe license manager code is only related to their "inMarket", which, as far as I can tell, is for .air files (not .apk andoird ones).
- call a java function from actionscript somehow. Or create an entirely java based "license protector" app that is packaged into the apk somehow, and it is that part of the app that then conditionally loads in the rest of the air app? (I don't think this is possible as it would involve java and air runtimes to be active simultaneously inside one app).
- put something into the app.xml/manifest file that effectively says "don't run this app if someone hasn't paid for a valid license"
It looks that way - I've had no success.
I've had a response from android, placing the responsibility directly with Adobe to implement an actionscript hook into their LVL.
I've found Adobe unhelpful, when I've been able to get them to reply that is. The only email I managed to get was from InMarket, that confirmed their actionscript license manager only works on InMarket - and doesn't work for android (although the response also claimed AIR isn't available for android yet so I doubt I was speaking to an informed colleague).
I've found no catch all copyright protection option in any application or manifest xml document (google leave it up to the developer to implement the LVL).
And also no luck with a JAVA-AIR hybrid, although I haven't had much time to research this lead. There's a possibility through a site I found called MerAPI, which seems to act as a bridge between air and java, however no work seems to have been done for over a year on their site (the product is still in beta).
It would be nice if someone from Adobe could respond to confirm any of my assumptions, and declare whether they have any plans to hook into androids LVL.
I can't see any serious company getting into AIR-Android development without any way to license the apps (some reports imply as little as 10% of people activly using an app actually paid for it).
Those people looking into coding for the upcoming blackberry playbook may find things a little easier as they already expose a Device.PIN property through their API.
My name is Rob Christensen and I work on the AIR team. First, thank you for the feedback and my apologies for the delayed response. We are treating this as a high priority request. Though I cannot commit to a release time frame right now, I can confirm that we are actively investigating this and plan to provide support in an upcoming release.
Product Manager, Adobe AIR
I am envolved in a project that will develop apps for Android, and Adobe Air is a possible choice.
I am not very experienced with the Android market app licensing, so considering that LVL cannot be integrated to Adobe Air, I have the same doubt stated by Geoff:
What are the possible ways to prevent Adobe Air apps for Android to be ilegally copied?
Is it possible to integrate it to other commercial license management solutions?
Thanks in advance,
I'm also interested in applying some features only available with the Java API too. Can we vote or something to push this a little bit? I'm planning to implement Licensing and In-App billing.
In the meantime, I'm investigating how to connect to the API though a AS-Java socket, but I guess it's not safe to do that. Any ideas?
I would also like in-app purchase and licensing for android market and for iOS at a later stage. Most people using Android have Android Market accounts. Plans for this functionality would be of great interest. Thanks.
Take a look at Android License SDK. It applies QuickLicense technology to Android applications to create time-limited Trials, Product, Subscription and Floating licenses.
In-app purchases were the answer for me. I had a full version APK that was being pirated mercilessly, but now full functionality can only be accessed through in-app purchases from within a free download. Now anybody who distributes my app is simply promoting a paid product and sales increased tenfold.
Is there already some progress in supporting adding LvL (licensing) to an APP for the Android market. I use Flash Professional. My App is ready for launch, but I need copy-protection!