How to Deploy Android Application to Beta Tester Devices

aryaxt picture aryaxt · Jun 26, 2010 · Viewed 16k times · Source

My android app is not in the app store yet. Is it possible to send my app to someone, and they install it on their device. Something like iphone AdHoc?

Answer

Tim Kryger picture Tim Kryger · Jun 26, 2010

You can email them your APK. Of course, there are several drawbacks to doing this.

  1. There is not any built in copy protection to lock an APK to a single device so a tester could redistribute your application without your consent. This is something that you will need to deal with even once you are using Market to distribute your application. If you select "Copy Protection On", people will still be able to get at your APK as many people have rooted devices and all this option does is influence where the APK is installed. Google advises, "you may also implement your own copy protection scheme" and I think it's prudent.

    Add the READ_PHONE_STATE permission to your manifest so you can retrieve the phone's IMEI, send to your server, and determine if a user should be allowed to run your application.

    TelephonyManager telephonyManager = 
        (TelephonyManager)getSystemService(TELEPHONY_SERVICE);  
    
    String imei = telephonyManager.getDeviceId();
    
  2. Your testers will need to enable "Unknown sources" to allow install of non-Market applications.

  3. Assuming your tester uses Google as their email provider, it is important to note that the Android GMail application doesn't handle APK attachments properly. While this might confuse the recipient of your email, there are easy work-arounds:

    • Tell them to use the Browser app to download your attachment through the web interface.
    • Have them download APKatcher first.