【问题标题】:know if application is running alpha, beta or release知道应用程序是否正在运行 alpha、beta 或 release
【发布时间】:2015-08-04 19:05:48
【问题描述】:

我正在开始对我的应用程序进行早期 alpha 测试,我想为其中几乎允许的两个环境设置服务器端环境:发布版和 beta 版。

注意它是如何工作的,你以 alpha 状态部署,然后你可以升级到 beta,所以二进制 APK 发行版是一样的。

有没有办法知道当前正在运行的应用程序是来自 alpha、beta 还是发布,以便我可以在运行时决定我应该发布到哪个 REST 服务?

有人试过吗?你如何设置相同的包来处理不同的服务器端环境?

【问题讨论】:

    标签: android google-play alpha beta


    【解决方案1】:

    为什么不将应用程序的内部版本号发送到您的后端 api ?这样您就可以知道哪个 App Build 正在发送这些请求,并可以决定它们是 alpha、beta 还是您命名的任何名称。

    要检查它,您可以使用下面的代码。

    /**
     * Retrieves Version Name defined in Manifest File.
     *
     * @return
     */
     private String getVersionName() {
          PackageInfo pInfo = null;
          String versionName = "";
          try {
              pInfo = getActivity().getPackageManager().getPackageInfo(getActivity().getPackageName(), 0);
                versionName = pInfo.versionName;
            } catch (PackageManager.NameNotFoundException e) {
                /* This never will be thrown but Don't take any Action if it happens somehow. Method will return an Empty String by Default */
            }
            return versionName;
     }
    

    【讨论】:

    • APK 部署到 alpha 状态,然后升级。内部版本号嵌入在 bin 中,升级后不会更改。我已经编辑了问题以反映真正的问题。
    • 没有您想要的解决方案。它应该在 GooglePlayServices 中,但不是。我可以提出两种解决方案,第一个是内部版本号,您可以在将应用程序部署到 beta 或发布之前上传一个新的 apk,这没什么大不了的。第二个解决方案是您可以检查日期。当您更改部署状态时您会知道,您可以查看日期。
    猜你喜欢
    • 2011-03-03
    • 1970-01-01
    • 1970-01-01
    • 2012-07-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多