[英]Android application for limited enterprise audience
This is the Android version of App for limited or restricted audience 这是面向受限或受限受众的App的Android版本
I'm going to start a brand new project for one of our customers that will be deployed to our customer's suppliers to track on-field activity. 我将为我们的一个客户启动一个全新的项目,该项目将部署到我们客户的供应商以跟踪现场活动。 I am skilled enough on Java/Android development so this question is only about deployment. 我对Java / Android开发足够熟练,因此这个问题仅与部署有关。
Our customer will either provide a Samsung Galaxy Ace 4
device to the suppliers or will allow the supplier to use their own Android 4 smartphone without warranties from us. 我们的客户将向供应商提供Samsung Galaxy Ace 4
设备,或者将允许供应商使用他们自己的Android 4智能手机,而无需我们保证。 Our customer currently has a Google for Business organization set up, but we cannot rely on that (see partial answer). 目前,我们的客户已经建立了Google for Business组织,但我们不能依靠它(请参阅部分答案)。
Given the above " should not be visible to the public" statement, what is the most effective and efficient way to deploy an Android app targeted only for enterprise users? 鉴于上述“不应该向公众可见的”说法,什么是部署有针对性的只针对企业用户的Android应用程序的最有效的方式? I'll post a partial answer below. 我将在下面发布部分答案。 I'm asking others to enrich it with other possible means, including using Alpha/beta channels for which I don't have experience about 我要求其他人以其他可能的方式丰富它, 包括使用我没有经验的Alpha / beta渠道
Currently, limited-audience Android applications can be deployed like this: 当前,可以像这样部署受众有限的Android应用程序:
Maybe adding a limitation to our country 也许给我们的国家增加了限制
Advantages: 好处:
Disadvantages: 缺点:
Advantages: 好处:
Disadvantages: 缺点:
As mentioned on this link , Google Play provides a private channel for app deploying for users withing a Google for Business organization. 如该链接所述 ,Google Play为拥有Google for Business组织的用户提供了用于部署应用的专用渠道。 This is the perfect approach for applications that organization's users must use 这是组织用户必须使用的应用程序的理想方法
Advantages: 好处:
Disadvantages: 缺点:
I haven't tested this yet, as it is also very tricky. 我还没有测试过,因为它也很棘手。 Basically, it involves using testing mode without ever going to production. 基本上,它涉及到无需生产就使用测试模式 。 With Google Play, one can deploy artifacts into Alpha (eg test server environment ) and Beta (a trick to point to production server environment ) without ever moving the app to Google Play's Production stage. 随着谷歌玩,一个可以部署到文物阿尔法(如测试服务器环境 )和Beta 在不移动应用到谷歌Play的生产阶段(一招指向生产服务器环境 )。
All requires setting up special moderated Google+ groups 所有这些都需要建立特殊的Google+托管组
Potential advantages: 潜在优势:
Disadvantages: 缺点:
From your requirements, I would suggest distributing the APK via a direct URL and integrating a service such as HockeyApp (see their Android SDK for more) to manage both the crash reports and app updates. 从你的要求,我会建议通过直接URL分配APK和集成服务,如HockeyApp(看到自己的Android SDK更多) 同时管理崩溃报告和应用程序更新。
"Ability to easily distribute application and updates across enterprise users" “能够在企业用户中轻松分发应用程序和更新的能力”
Many services allow .apk
files to be uploaded directly to their service for deployment. 许多服务允许.apk
文件直接上载到其服务中以进行部署。 A direct download link is then generated for that build. 然后为该生成生成直接下载链接。
Crash information is collected and updates are automatically displayed if the app implements the Android SDK provided by the service. 如果应用程序实现了服务提供的Android SDK,则会收集崩溃信息并自动显示更新。
"Application should not be visible to the public" “应用程序不应对公众可见”
Services such as HockeyApp do not publicise direct download links publicly. HockeyApp之类的服务不会公开发布直接下载链接。 This link can therefore be distributed as required. 因此,可以根据需要分发此链接。
"Application must be able to send crash reports so our team can inspect and investigate" “应用程序必须能够发送崩溃报告,以便我们的团队可以检查和调查”
Full stack-trace and device information is sent along with crash reports and can be viewed online by technicians. 完整的堆栈跟踪和设备信息与崩溃报告一起发送,并且技术人员可以在线查看。
From my experience there are a few pros and cons: 根据我的经验,有一些优点和缺点:
Pros : 优点 :
Cons : 缺点 :
Crash report's aren't sent automatically and updates aren't automatic 崩溃报告不会自动发送,更新也不会自动发送
By default, updates and crashes appear as system dialogs prompting users to either send the crash report/update the app or cancel. 默认情况下,更新和崩溃会显示为系统对话框,提示用户发送崩溃报告/更新应用程序或取消。 Ideally, no user interaction should be required to perform the desired actions. 理想情况下,不需要用户交互即可执行所需的操作。 I am sure it is possible but have not found relevant documentation for it. 我确定有可能,但尚未找到相关的文档。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.