分发(和更新)仅在内部使用的企业Android应用程序

时间:2022-04-02 11:01:00

I'm building an Android application for an enterprise customer that will be used in-house (and not sold). Though we have additional auth measures, I'd rather not deploy the application on the marketplace.

我正在为企业客户构建一个Android应用程序,该应用程序将在内部使用(而不是出售)。虽然我们有额外的auth措施,但我宁愿不在市场上部署应用程序。

I was just wondering if anybody had previously done something of this sort, and had suggestions.

我只是想知道是否有人曾经做过这类事情,并有建议。

Also, If we were to upload the APKs, how could we handle updates to our software? As I understand it, the Android marketplace handles update notifications if the Marketplace is used. Would we have to write a service of our own to monitor for updates?

另外,如果我们要上传APK,我们如何处理我们软件的更新?据我了解,如果使用Marketplace,Android市场会处理更新通知。我们是否必须编写自己的服务来监控更新?

5 个解决方案

#1


15  

A Google I/O 2011 talk, "Taking Android to Work", covers this problem, but does not offer a very satisfying solution. See the talk on YouTube (between about 30:00 and 36:00), or the PDF Slides.

谷歌I / O 2011的演讲“让Android工作”,涵盖了这个问题,但并没有提供一个非常令人满意的解决方案。请参阅YouTube上的演讲(约30:00至36:00)或PDF幻灯片。

In summary, the talk suggests building an "Internal App Directory", which is essentially a private app market for an organisation. The PackageManager API can be used for querying the installed applications, and installing new applications. You'll have to periodically check for updates yourself.

总之,该演讲建议构建一个“内部应用程序目录”,它本质上是一个组织的私有应用程序市场。 PackageManager API可用于查询已安装的应用程序和安装新应用程序。您必须自己定期检查更新。

I would think this is a common problem, but unfortunately I haven't found any good existing solutions for this, and it seems like you'll need to implement all of this yourself (both client-side and server-side). You can check out this question, but I didn't find the listed solutions appealing.

我认为这是一个常见的问题,但遗憾的是我没有找到任何好的现有解决方案,看起来你需要自己实现所有这些(客户端和服务器端)。你可以查看这个问题,但我没有发现列出的解决方案很有吸引力。

If the organisation only uses a single organisation-wide Android application, it is probably simpler to implement all of this in the application itself, instead of in an "Internal App Directory".

如果组织仅使用单个组织范围的Android应用程序,则在应用程序本身中实现所有这些操作可能更简单,而不是在“内部应用程序目录”中实现。

Update 2012/03/23:

Since my first answer I checked out some mobile device management (MDM) solutions. Two of them I considered were AirWatch and MaaS360. Both of them have built-in enterprise app stores, which you can use to distribute the apps. The largest issue with them is the pricing - AirWatch is the cheapest decent MDM solution I've found, at $3/user/month.

自从我的第一个回答,我检查了一些移动设备管理(MDM)解决方案。我考虑过其中两个是AirWatch和MaaS360。它们都有内置的企业应用程序商店,您可以使用它们来分发应用程序。与他们最大的问题是定价 - AirWatch是我发现的最便宜的MDM解决方案,每月3美元/用户。

If the enterprise wants full MDM functionality (many enterprises do), and can afford it, go for an MDM solution with a built-in enterprise app store. If you only want updates for a single application, Pushlink as posted by Victor Hugo seems perfect.

如果企业需要完整的MDM功能(许多企业都可以),并且能够负担得起,那就选择内置企业应用商店的MDM解决方案。如果您只想要单个应用程序的更新,Victor Hugo发布的Pushlink似乎很完美。

#2


7  

Take a look at https://www.push-link.com/. It might solve your problems.

请查看https://www.push-link.com/。它可能会解决您的问题。

#3


1  

You will have to write your own service to notify of updates. You can use a listener to push the update to the phone where it can be automatically downloaded by the listener, but I believe you will need to have the user manually hit the "install" button to update the app since it's not coming from the marketplace. Also, depending on the app configuration you may need to uninstall and reinstall the application on update, but unfortunately I don't have details or instances where that would have to be the solution.

您必须编写自己的服务以通知更新。您可以使用监听器将更新推送到手机,听众可以自动下载,但我相信您需要让用户手动点击“安装”按钮来更新应用,因为它不是来自市场。此外,根据应用程序配置,您可能需要在更新时卸载并重新安装应用程序,但遗憾的是,我没有必须提供解决方案的详细信息或实例。

Also, keep in mind that AT&T phones don't (out of the box) allow for installing apps not from the marketplace. They are said to be working on a solution for this, but it might only be for the Amazon App Store.

此外,请记住,AT&T手机不能(开箱即用)允许安装不是来自市场的应用程序。据说他们正在为此制定解决方案,但它可能仅适用于亚马逊应用商店。

Edit: You will also need to make sure the phones the app is installed on has "Unknown Sources" checked in Settings>Applications

编辑:您还需要确保安装了应用程序的手机在“设置”>“应用程序”中选中了“未知来源”

#4


0  

This isn't exactly what one might term the perfect solution to the problem, but there seem to be a few people coming out with enterprise Mobile Device Management solutions. Here's a few I found (I'm still not sure if our customer'd want to go for these, but the existing approach of chasing everybody up per email just doesn't scale!).

这并不是人们可能称之为问题的完美解决方案,但似乎有一些人推出了企业移动设备管理解决方案。这里有一些我发现的(我仍然不确定我们的客户是否想要这些,但现有的方法是每个电子邮件追逐每个人只是不扩展!)。

Trellia MobileIron: Almost impossible to get any useful non-corp-speak info from this website. AirWatch: The only people who seem to have bothered to actually tell you how much it costs ($3/device/month; pricey!)

Trellia MobileIron:几乎不可能从这个网站获得任何有用的非公司发言信息。 AirWatch:唯一一个似乎一直困扰的人实际上告诉你它的成本是多少(3美元/设备/月;昂贵!)

#5


0  

http://f-droid.org/

A custom andriod market like setup with free open source softwares.

一个定制的andriod市场,如设置免费的开源软件。

#1


15  

A Google I/O 2011 talk, "Taking Android to Work", covers this problem, but does not offer a very satisfying solution. See the talk on YouTube (between about 30:00 and 36:00), or the PDF Slides.

谷歌I / O 2011的演讲“让Android工作”,涵盖了这个问题,但并没有提供一个非常令人满意的解决方案。请参阅YouTube上的演讲(约30:00至36:00)或PDF幻灯片。

In summary, the talk suggests building an "Internal App Directory", which is essentially a private app market for an organisation. The PackageManager API can be used for querying the installed applications, and installing new applications. You'll have to periodically check for updates yourself.

总之,该演讲建议构建一个“内部应用程序目录”,它本质上是一个组织的私有应用程序市场。 PackageManager API可用于查询已安装的应用程序和安装新应用程序。您必须自己定期检查更新。

I would think this is a common problem, but unfortunately I haven't found any good existing solutions for this, and it seems like you'll need to implement all of this yourself (both client-side and server-side). You can check out this question, but I didn't find the listed solutions appealing.

我认为这是一个常见的问题,但遗憾的是我没有找到任何好的现有解决方案,看起来你需要自己实现所有这些(客户端和服务器端)。你可以查看这个问题,但我没有发现列出的解决方案很有吸引力。

If the organisation only uses a single organisation-wide Android application, it is probably simpler to implement all of this in the application itself, instead of in an "Internal App Directory".

如果组织仅使用单个组织范围的Android应用程序,则在应用程序本身中实现所有这些操作可能更简单,而不是在“内部应用程序目录”中实现。

Update 2012/03/23:

Since my first answer I checked out some mobile device management (MDM) solutions. Two of them I considered were AirWatch and MaaS360. Both of them have built-in enterprise app stores, which you can use to distribute the apps. The largest issue with them is the pricing - AirWatch is the cheapest decent MDM solution I've found, at $3/user/month.

自从我的第一个回答,我检查了一些移动设备管理(MDM)解决方案。我考虑过其中两个是AirWatch和MaaS360。它们都有内置的企业应用程序商店,您可以使用它们来分发应用程序。与他们最大的问题是定价 - AirWatch是我发现的最便宜的MDM解决方案,每月3美元/用户。

If the enterprise wants full MDM functionality (many enterprises do), and can afford it, go for an MDM solution with a built-in enterprise app store. If you only want updates for a single application, Pushlink as posted by Victor Hugo seems perfect.

如果企业需要完整的MDM功能(许多企业都可以),并且能够负担得起,那就选择内置企业应用商店的MDM解决方案。如果您只想要单个应用程序的更新,Victor Hugo发布的Pushlink似乎很完美。

#2


7  

Take a look at https://www.push-link.com/. It might solve your problems.

请查看https://www.push-link.com/。它可能会解决您的问题。

#3


1  

You will have to write your own service to notify of updates. You can use a listener to push the update to the phone where it can be automatically downloaded by the listener, but I believe you will need to have the user manually hit the "install" button to update the app since it's not coming from the marketplace. Also, depending on the app configuration you may need to uninstall and reinstall the application on update, but unfortunately I don't have details or instances where that would have to be the solution.

您必须编写自己的服务以通知更新。您可以使用监听器将更新推送到手机,听众可以自动下载,但我相信您需要让用户手动点击“安装”按钮来更新应用,因为它不是来自市场。此外,根据应用程序配置,您可能需要在更新时卸载并重新安装应用程序,但遗憾的是,我没有必须提供解决方案的详细信息或实例。

Also, keep in mind that AT&T phones don't (out of the box) allow for installing apps not from the marketplace. They are said to be working on a solution for this, but it might only be for the Amazon App Store.

此外,请记住,AT&T手机不能(开箱即用)允许安装不是来自市场的应用程序。据说他们正在为此制定解决方案,但它可能仅适用于亚马逊应用商店。

Edit: You will also need to make sure the phones the app is installed on has "Unknown Sources" checked in Settings>Applications

编辑:您还需要确保安装了应用程序的手机在“设置”>“应用程序”中选中了“未知来源”

#4


0  

This isn't exactly what one might term the perfect solution to the problem, but there seem to be a few people coming out with enterprise Mobile Device Management solutions. Here's a few I found (I'm still not sure if our customer'd want to go for these, but the existing approach of chasing everybody up per email just doesn't scale!).

这并不是人们可能称之为问题的完美解决方案,但似乎有一些人推出了企业移动设备管理解决方案。这里有一些我发现的(我仍然不确定我们的客户是否想要这些,但现有的方法是每个电子邮件追逐每个人只是不扩展!)。

Trellia MobileIron: Almost impossible to get any useful non-corp-speak info from this website. AirWatch: The only people who seem to have bothered to actually tell you how much it costs ($3/device/month; pricey!)

Trellia MobileIron:几乎不可能从这个网站获得任何有用的非公司发言信息。 AirWatch:唯一一个似乎一直困扰的人实际上告诉你它的成本是多少(3美元/设备/月;昂贵!)

#5


0  

http://f-droid.org/

A custom andriod market like setup with free open source softwares.

一个定制的andriod市场,如设置免费的开源软件。