views:

102

answers:

3

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?

A: 

Is it possible to send my app to someone, and they install it on their device

Yes, of course. You can share the APK with other people and they can install the application. It's not necessary for the app to be in the Market.

Cristian
This may not be as obvious to some people that are familiar with say, the _other_ mobile platform.
jason
exactly, i am an iphone app developer, and this is my first android app, and believe me it took me a week to get Adhoc to wrok, to allow testers to install the app.This is a little too simple to be true :)
aryaxt
A: 

Yes. Upload it to a website or email the ".apk" file to your friend. Have your friend make sure that the option to allow for "Unknown Sources" on the device is checked (Settings > Applications > Unknown Sources). When your friend downloads the application on their device and clicks to run it, it will be installed and should appear in the applications menu ready to be executed.

Enginnerd
+2  A: 

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.
Tim Kryger
It seems to me that using tying a user to a particular IMEI is a pretty heavy-handed limitation: for most (all?) other apps I've used, I've been able to continue to use the apps I had previously installed when, for whatever reason, I got a new phone.So if you're tracking IMEIs, at least be somewhat liberal about it; e.g. a user can have no more than 5 IMEIs using the app within some period of time, etc. This should be enough to prevent rampant piracy without unnecessarily inconveniencing your legitimate users.
Vineet
@Vineet I agree, once the application is in the Market you don't want your paying customers to lose your application just because they upgraded their phone. For beta testers, you may not need to be as generous.
Tim Kryger