Android Licensing 2017-09-06T13:23:21+00:00

Licensing for Android Applications

Overview

QLM can protect Android apps with license keys with the same features available when protecting Windows applications. To copy protect an Android app, you generate an Activation Key from the QLM Application, via an API call or through our integration with leading ecommerce providers.

The activation key specifies the expiry date of the license as well which features should be enabled by this license.

The Android App user enters the Activation Key in your Android App and activates it. The diagram on the left displays the data flow between your Android app and the QLM web service.

QLM Enterprise can protect Android applications with permanent, trial and device bound keys. A java package (source code included) exposes an API that enables you to provide your customers with an evaluation of your software and then turn it at anytime into a permanent license, or simply extend it for subscription based applications.

Sample Code

The java package along with a sample applications are provided in the following QLM Enterprise samples folder:

        %Public%\documents\quick license manager\samples\qlmenterprise\Android\Qlm.Vendor.App

The sample contains 2 packages: com.soraco.qlm and com.vendor.app

com.soraco.qlm is the package that performs the license validation, activation, encryption, etc. You typically do not need to change any code in this package. The QlmLicense class in this package is the main class you need to interfact with. The most common methods of this class are document in the help under “Quick License Manager Professional / API reference / Mobile Devices API”.

com.vendor.app simulates your application. When the application is launched, the ValidateActivity class checks if a license has ever been activated on the device. If no key was ever activated, the PrefsActivity is started to allow the user to enter an Activation Key and activate it.

Online Activation

  1. Use the QLM Management Console to create an Activation Key from the Manage Keys tab. Note that activation keys can be created from your server using our API or directly from one of the ecommerce provider integrated with QLM. For a full list of ecommerce providers integrated with QLM, check the help or our web site.

  2. Once the user enters the Activation Key, the PrefsActivity class calls the QlmLicense.ActivateLicense method.

  3. If activation is successful, encrypted license information is stored on the device. QLM uses RSA asymmetric encryption to store license information on the device. The RSA public/private key pair is automatically generated by QLM when you define a product in the QLM Application Define Products page. The keys are displayed on the Encryption Keys tab / Mobile Devices Encryption.

    Note that the encrypted data stored on the device is encrypted on the QLM server using the RSA private key and decrypted on the device using the RSA public key.

    On the Android application, the RSA public key must be stored in a file called QlmPublicKey.xml in the assets folder.

Offline Activation

In the event a client does not have an internet connection to activate a license online, you can perform an offline activation as described below:

  • In the QLM application, under the Manage Keys tab, locate and select the license to activate.
  • Click on the Activate button.
  • Fill in the Computer ID field on the Activation tab along with other fields as required.
  • Click on the Mobile Device Activation tab.
  • Select a location where you would like to store a license file then click Ok.
  • Send the generated license file to your customer and ask them to copy it to the folder where your application expects the license file to be located.

 

 

QLM Android Licensing

To learn more about QLM’s feature set, go to our main QLM product page.