2012-07-11 96 views
2

我想从我们的文件服务器上安装APK,以及它需要在用户不能够选择是否将其安装或接受的权限设置/更改默默地做。这是合法的业务需求,因为我们正在与设备供应商合作将我们的应用程序预装入/ system/app。这是一款定制的Android平板电脑设备,因此,我们的业务部门希望确保我们可以推送应用更新(即强制推出最新版本)。安装一个Android APK程序

我明白平时的安全限制,但似乎有一种机制来安装默默的为供应商/制造水平的应用程序应用。然而,关于如何做到这一点的信息充其量只是非常斑点。

看来安装程序包必须在/系统/应用程序和安装程序必须具有相同的签名证书密钥所安装的应用程序。这不是问题,但关于如何使用此流程实现此功能的信息是我尚未找到的。

任何人都曾经这样做过?

+1

在自动更新?听起来像是一个巨大的安全漏洞。这将是很酷的,但我怀疑Android操作系统会让你这样做。 +1 – 2012-07-11 14:23:06

+2

是的,Ryan是对的,但你仍然可以检查http://stackoverflow.com/questions/5803999/install-apps-silently-with-granted-install-packages-permission寻找可行的方法。 – 2012-07-11 14:24:10

+1

当你问你的设备供应商这个问题时,他们告诉你什么? – CommonsWare 2012-07-11 16:26:09

回答

1

我相当肯定你需要把它们运一个定制的Android ROM,让您能够做到这一点(我怀疑他们的业务将享受)。

亚马逊应用商店正常的设备上不能像谷歌Play可以在后台静默安装。也许Kindle Fire可以做到这一点(我没有自己的),但如果可以的话,那是因为它运行在由亚马逊构建的自定义ROM上。

你能做的最好的事情就是发动告诉带给需要更新,这使他们对安装人员的活动,然后要求用户交互,用户应用程序的意图。

0

不完全是一个答案。然而,我们最近面临一个Android客户端 - 服务器应用程序的类似要求。

每当应用程序通过请求与服务器联系时,它也会发送当前的versionCode。

PackageInfo pInfo = getPackageManager().getPackageInfo(getPackageName(), 0); 
//pInfo.versionCode; 
//pInfo.versionName; 

在服务器端,我们检查的versionCode如果我们有一个新的版本,通知客户端和客户端强制用户升级到新版本。客户端应用程序在升级到新版本之前无法运行。但显然用户可以选择不安装等。

希望它有帮助。