Android 设备如何将应用识别为“市场”或“非市场”?
情况是我有一个应用程序我想提供给一组客户,而不是整个世界,但不希望他们必须经历允许他们的设备安装非-市场应用程序。我想通过登录墙后面的公司网站分发它,而不会失去 play 应用程序的安装便利性。
专为公司内部分发而设计的私有(private) channel 与我的想法不太一样。我正在通过每个客户的网站分发给我公司的客户,每个客户都有很多员工。
我不介意以某种方式将应用提交给 Google 以进行签名、盖章等操作。“为什么不直接使用市场”是一个合理的问题,我也在考虑这个选项。
我也不想在此过程中违反 Google 的服务条款。
澄清: 我很欣赏到目前为止的答案。我想问的是 Android 操作系统用来确定某个东西是否是市场应用程序的机制。
最佳答案
这应该为您提供正确的信息:
PackageManager pm = getPackageManager();
String installationSource = pm.getInstallerPackageName(getPackageName());
结果 com.google.android.feedback 表明该应用是使用 Google Play 安装的。
希望这有帮助...干杯!
附注 this related link看起来很有趣
关于android - 是什么让 Android 应用程序成为 "market"或 "non-market"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16308542/