2

We are developing an android application which is to be installed on the ~500 devices in the premises.How can I do it centrally at one go via wifi network.

Thrice every quarter, the following is required

  • The application (upgradeable version) needs to be installed.
  • Uninstalled (older version) frequently.

I know on device we can set "allow unknown sources" by default. But is it possible to push/install the application (like the ICS push on the Ginger Bread Mobile Phone recently)

I have gone through this post but no precise answer.

Community
  • 1
  • 1
Raulp
  • 7,758
  • 20
  • 93
  • 155
  • Doesn't Device Administration allow you to manage installed apps and install others? I know you can manage a lot of stuff in a centralized way, but I'm not sure about install/uninst/update apps. – davidcesarino Apr 13 '12 at 19:01
  • 1
    Only solution is .... Own ROM, sorry. – Selvin Apr 13 '12 at 19:01
  • @David:The devices are given to the Field Engineers, knows not much or hardly care about updating the app.Its a management decision to have the app for all , some tracking may be. – Raulp Apr 13 '12 at 19:04
  • You could create some market like app that checks you local webserver if a new version is available, downloads the apk and starts it. That will prompt users to install / upgrade but it would ease distributing the apk – zapl Apr 13 '12 at 19:05
  • softy, I understood the scenario. – davidcesarino Apr 13 '12 at 19:07
  • There are some products out which provide enterprise app management/distribution. Here is one example: http://www.apperian.com/get-started/ease-faqs – Eric Levine Apr 13 '12 at 19:08
  • 1
    @softy i understand you ... I will have about 50 android devices in company where i work ... I made "movile trader" app and ive search internet really hard to find solution to autoupdate this kind of app but ive faild ... Experts in android development said rom is the only solution – Selvin Apr 13 '12 at 19:11
  • @Selvin so we can do a ROM push then, just like ICS over the air.It doesn't removes the pre-installed app.Its like upgrading your Ubunutu 10.04 to 10.10 w/o loosing the user data. – Raulp Apr 13 '12 at 19:18
  • If you don't mind the big security risk (read this, pause, then read again), you could set up a VPN, activate debugging on the phones, and push the apks at once with an adb script. adb can connect to network devices by `adb connect ip`, so chaining all that would be easy, and you would install the app for all your 500 phones. AGAIN: some big security risks may be involved. – davidcesarino Apr 13 '12 at 20:26

2 Answers2

1

Unless you have a custom version of Android on a device you cannot send an APK to the device and have it install automatically without using the Android Market.

However you can deploy applications to an individual device without user interaction using ADB . Using the following command:

adb install /Path/ToFile/ApkFile.apk

Additionally you can put the apk on the phone and then install it using the package manager.

slayton
  • 20,123
  • 10
  • 60
  • 89
1

For the initial install, you can't. You have no choice but to manually install the app by one means or another (e.g., download it via a link from your intranet).

For updates, the app can check for an available update, download it, and then initiate an install when the user is ready. You cannot forcibly upgrade the app though -- the user will have to be involved.

You also cannot "installed (upgradable version)-uninstalled (older version)" except by hand -- once the app is uninstalled, it has no way to trigger installation of some other app. Also, by uninstalling, you lose all your data, which is generally frowned upon. Upgrading in place is the more typical approach.

CommonsWare
  • 986,068
  • 189
  • 2,389
  • 2,491