android - 是什么让 Android 应用程序成为 "market"或 "non-market"?

标签 android google-play

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/

相关文章:

android - Google Play,已验证购买的应用程序

android - 区分 Google Play Sandbox 购买

Android - 每当用户复制到剪贴板时从剪贴板获取文本

android - 在 firebase 上保存数据时应用程序崩溃并出现 'java.lang.StackOverflowError: stack size 8MB' 错误

javascript - Google Play 商店安全警报说您的应用程序包含易受攻击的 JavaScript 库如何删除安全警告?

java - 在 Play 服务 9.4.0 中访问 AdvertisingIdClient

android - 如何从特定项目位置开始显示 ListView

android - 任务 ':android:lint'的执行失败无法初始化类com.sun.imageio.plugins.jpeg.JPEGImageReader

android - Recyclerview 中的多个编辑文本

android - 在 Google Play 应用内结算中消费已取消的购买