Google optimize

Deploy private Android Apps on Google Play

The Google Play store can now be used to securely deliver private applications to your employee Android devices. Learn how easy it is to get started.

Google Play is the content-delivery marketplace offered by Google and is commonly compared to Apple iTunes. Both are generally thought of in terms of consumer material; music, movies, TV shows, digital books and digital periodicals are common fare in these venues. There are also applications available on Google Play, both of the consumer and business variety. These programs previously could only be made public, but this has now changed.

Google has recently made it possible for Google Apps (Business/Education/Government) organizations to publish their own Android applications privately to a dedicated company-owned channel on Google Play. This service is called the Google Play Private Channel and it is representative of the ongoing blend between consumer and business products (an evolution which I feel Blackberry picked up on too late, dooming their future) which celebrate "one stop shopping."

What are the benefits of publishing Android apps to Google Play?

I'm a hybrid IT guy, balancing concepts of "let's try this since it would be cool" and "what business need would this serve" on a day-to-day basis. Generally the first notion is recreational and the second is what I would term "corporate." And so when a new service like this is offered I find myself wondering (if it's between 8 and 5 pm) "Why should we use this new process when there are already existing processes that work fine?" Currently, you can install private apps to Android devices in no small number of ways; through email, web browsers or directly such as from a micro SD card, for instance.

I'm not a fan of doing anything "just because" - there should be a purpose to it. Nothing is worse than a "me too" product or some process just put out there to show it can be done. This is why I still dress the same way as when I was 22; no need to change perfection, obviously.

However, Google Play allows you to centrally store your apps and provide them to users. If you've written a private app (or you're supporting a developer who has by deploying the app to the target audience) you can publish the app on Google Play and easily instruct your users on how to access and install it.

Now, you could send out multiple emails with the install files (whereby attachments might be a pain to move around and take up space), load the app on your company web server (which might require a VPN connection to tunnel in if it's an internal-only site), or utilize some slower, more complex method of app distribution like storing the files on a network share for them to find and install. However, Google Play allows you to cut to the chase and streamline the delivery process. "Shorter, faster, better" is always a good answer to that "Why should we use this new process" question.

You can even charge users for your own private apps if desired, such as making a VP pay $49.99 for your customized VPN client after he pages you on New Year's Eve with a remote access issue. Of course, shaking down a VP might not be the best job security.

Along with centralized application publishing, the Google Play Private Channel offers standard features you'd expect in any typical secured company environment; only authorized users can obtain the apps (by logging into Google Play with their Google Apps ID/password). Apps can be screened for viruses/malware. Options are available to determine to where/on what device these apps can be distributed.

What are the drawbacks?

While there aren't "drawbacks" per se, there are limitations.

  • You cannot publish apps for non-Android devices - no iOS, Blackberry or Windows phones/tablets.
  • You can't target apps to users or groups, but you can restrict them by country (e.g. only US Androids) or device models. This last feature seems to be more app-oriented than security-oriented since you could use it to only allow the app to install on the devices you've confirmed can run it. Unless you've given a specific Android device model to one group (e.g. VPs) this doesn't do much to filter the apps by user.
  • Accessing a Private Channel requires using Google Play on Androids; you cannot get to this via a web browser at present (this could change down the road).
  • You can't publish applications both publicly and to your private channel; you can only choose one destination.
  • Private Channels are assigned to organizations, not domains. So if your company owns example.com, examples.com, exsample.com and so forth you still only have one private channel.

At the time of this article (January, 2013) Google states "developers need to use the older version of the Google Play Developer Console to publish apps restricted to their domain." Do not use the new preview version at this time (naturally, this is subject to change as the preview version evolves).

How can I get started using my Google Play Private Channel?

The process is easy and involves two parts to get ready:

  1. Creating an account on the Google Developer Console for application publishing.
  2. Configuring the settings in your Google Apps Control Panel to allow users to publish/install these programs.

When you sign up with the Google Developer Console (by "you" I mean "your company") you need to do this using a Google Apps account associated with your organization. It is recommended to use a "service" account such as "app_publisher@(your domain).com" Just like dedicated support accounts on vendor websites, it's a good practice to do this so the account isn't tied to an individual who might leave the organization, necessitating an account rename, lost password or some other hassle.

Click here to access the Google Developer Console registration page. You have to agree to the Google Play Developer distribution agreement, review the countries where you can distribute the applications, and then pay a $25 registration fee.

Next, you'll need to activate your Google Play Private Channel in Google Apps. Sign into your Google Apps Control Panel. (Figure A) https://www.google.com/a/your_domain.com

(where "your_domain.com" should read the name of your organizational domain)

Figure A

Click on "Settings" and find "Mobile" in the list of fields on the left. (Figure B)

Figure B

Click on "Mobile" to access the Mobile options. Look for the "Google Play settings". (Figure C)

Figure C

Check off "Allow users to access Google Play Private Channel" and "Allow users to update Google Play Private Channel" (this allows you to distribute Android apps to your company's private channel).

Click "Save changes." A notice will inform you that it may take up to 24 hours to propagate the changes to all users.

How do I publish the program to my Google Apps Private Channel?

Let's say you've coded a cool floor plan app which shows the layout of your company and all of its people, printers, coffee machines and other resources. Maybe you've even figured out how to program it like a Marauder's Map so workers can tell where the bosses are at all times and scramble out of the way to keep their workloads manageable (this would probably involve installing RFID tags on the bosses so use your imagination).

Now you'd like your company Android users to be able to install this app from your private channel - and maybe you're even thinking about charging them for it, since that's a pretty useful tool!

This guide can show you the ins and outs and publishing to Google Play, but in a nutshell you upload the app to the Google Developer Console, and then publish it by going to "Product Details," "Publishing Options," "Restrict Availability" and checking off "Make this application available only to users of my Google Apps domain." The app will then be sent to your Private Channel.

Keep in mind there is a limit of 50Mb for an app size, but it seems hard to believe you'd come close to approaching this (even if you did Google Play will allow you to use APK Expansion files as a workaround).

How can users install my new app?

Users need to log into Google Play on their Androids with their Google Apps ID/password, then go to Apps, and click on your domain name (e.g. Example.com). The available apps will then appear and they can install them as needed.

The Google Enterprise Blog has a post discussing this new feature which includes a screenshot of how to access your Private Channel in Google Play on your Android. The screenshot uses "Example.com" as a sample company name and shows the programs published to the channel (note some are free and one costs money):

Figure D

Off to publication

If your company is an Android-only shop that uses in-house programming staff to roll out apps this can be a great new feature for you. I realize that it may leave your iPhone users out in the cold, or at least force you to code and distribute separate programs via separate delivery mechanisms. I'd like to see a native platform-independent ability to distribute programs to all devices in an organization whether iOS, Android, or some other variety. This is available via third-party services such as Apperian at present.

The Google Apps Documentation and Support page has a Google Play Private Channel for Google Apps guide which contains a FAQ. If you're the developer for your organization, check out the Google Play for Developers page as well.

Also, if you do manage to code a "Maurader's Map" program, please contact me directly. I'll volunteer to be a free beta tester.

Also read:

About

Scott Matteson is a senior systems administrator and freelance technical writer who also performs consulting work for small organizations. He resides in the Greater Boston area with his wife and three children.

1 comments
Mark W. Kaelin
Mark W. Kaelin

I can see the potential benefits of this approach to app delivery - has anyone tried this for their organization? How did it work out? What problems did you encounter?