【问题标题】:For an Android library, is there a way to detect whether host Android app is a beta testing build vs production build对于 Android 库,有没有办法检测主机 Android 应用程序是 beta 测试版本还是生产版本
【发布时间】:2020-02-21 02:55:17
【问题描述】:

我正在构建一个 android SDK/库。

在库中我想知道 app 是否是其中之一

  • 在模拟器上运行
  • 物理设备
  • 是否在 google play 上进行 beta 测试
  • 或者它的产品构建

根据我的知识,我只能根据对 Build 类值的一些检查来检测 simulatorphysical。除非使用library 的应用程序开发人员通过public API 提供该信息,否则库无法了解beta testingproduction

如果有办法,有人可以确认此限制或提供一些见解吗?

原因是将 API 调用和数据路由到特定端点,这样各种数据就不会最终导致生产数据出现偏差。

对于所有情况,我可以通过不同的 API 密钥来做到这一点,但现在已经超出了限制。

【问题讨论】:

  • 模拟器/设备是否在您的控制之下,或者您是否使用第三方 beta 测试人员但不相信他们会歪曲生产数据?
  • 我正在构建库,因此可以有多个应用程序可以使用库/SDK。我无法控制或了解如何进行应用测试。

标签: android android-library android-build-type


【解决方案1】:

我认为像您这样的第三方库/SDK 不可能知道任何开发人员在测试/QA/生产环境中运行的方式、位置或时间。任何真正的设备都可以用于开发或生产。

即使对于部署到 Google Play 商店的主要应用开发者,也有有限的跟踪检测选项,如 Is it possible to detect that an android app is either a beta version or production version? 所示。

我同意您的观点,如果存在开发/QA/生产限制(即您的后端服务),您需要向您的库提供某种公共 API 以选择合适的 API,因为您已排除不同的 API键。

遗憾的是,您还必须做好准备,开发人员会将您的库以错误的状态发布到生产中,从而导致其他业务相关影响(生产数据进入 QA 或相反)。

【讨论】:

  • 是的,所以这与我的理解基本相同。感谢您分享您的想法。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-07-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-02-16
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多