如何使用 Fastlane 在 Hockeyapp 上查找下一个版本号

How to find out the next buildnumber on Hockeyapp with Fastlane

我们使用 Fastlane 构建我们的应用程序,我们希望能够在我们的 CI 服务器或本地机器上进行一致的暂存构建。

由于我们在 Hockeyapp 上发布了所有版本,因此我们考虑从 Hockeyapp API 中检索我们应用程序的最高版本号,然后将其增加一。

如何从 Fastlane 获取内部版本号?

目前无法通过 fastlane 使用 HockeyApp 操作。如果您有兴趣贡献,我们绝对愿意审查 GitHub 上的 PR!

我居然找到了方法

这里有一个 fastlane 插件 fastlane-plugin-latest_hockeyapp_version_number

您可以使用 fastlane add_plugin latest_hockeyapp_version_number

添加此插件

之后您可以通过此调用获得最新版本号:

build_number = latest_hockeyapp_version_number(
   api_token: "Your API Token, needs full access for your app on Hockey",
   app_name: "The App Name",
   platform: 'Platform', # iOS, Android, Mac OS, Windows Phone, Custom
   release_type: '0' # 0 = Beta (default), 1 = Store, 2 = Alpha, 3 = Enterprise"
) 

无需查找内部版本号,当您将内部版本上传到 Hockey 时,您可以直接获取最新版本的 URL,并且可以在电子邮件中共享,以便 QA 和其他人可以直接下载使用 link 的构建。您可以通过执行 shell 脚本文件来实现。

JSON=$( curl https://rink.hockeyapp.net/api/2/apps/$HOCKEY_APP_ID/app_versions \
        -F status="2" \
  -F notify="0" \
  -F notes="$RELEASE_NOTES" \
  -F notes_type="0" \
  -F tags="beta" \
  -F ipa="@$OUTPUTDIR/$APP_NAME.ipa/$APP_NAME.ipa" \
  -H "X-HockeyAppToken: $HOCKEY_APP_TOKEN"
)

URL=$( echo ${JSON} | sed 's/\\//\//g' | sed -n 's/.*"public_url"\s*:\s*"\([^"]*\)".*//p' )