从 Fabric Beta 下载 Android APK 文件
Posted
技术标签:
【中文标题】从 Fabric Beta 下载 Android APK 文件【英文标题】:Download Android APK file from Fabric Beta 【发布时间】:2017-11-22 04:38:16 【问题描述】:是否可以?我们上传了多个版本。
【问题讨论】:
【参考方案1】:来自 Fabric 的 Mike。我们目前不提供下载 .APK 的方法,它们仅由 Crashlytics 应用程序通过 Beta 版提供。
【讨论】:
嗨,迈克。现在你们提供这种选择吗? Fabric 迁移到 Firebase 后,我无法下载位于 Beta 中的关键版本 我建议联系 Firebase 支持,看看是否有办法或提供反馈。我不再从事该产品的工作,所以我不知道最新的情况。【参考方案2】:迟到的答案,但有人可能需要这个。您可以通过 Beta 或任何方式从应用程序安装的设备上以一种 hacky 方式下载它:
将设备连接到您的计算机并运行以下命令,确保您已正确配置adb
:
adb shell pm list packages | grep xyz # get the package name of the app
adb shell pm path app.xyz.stg # get the path of the app
adb pull /data/app/app.xyz.stg/base.apk . # pull the app to PWD
应用的名字是base.apk
,改成xyz。这可以用于同一设备。
【讨论】:
【参考方案3】:梅苏特的回答是正确的。只是为了更清楚。
adb shell pm path $package_name
adb pull /data/app/$package_name_2/base.apk
在第二个命令中,值 $package_name_2/base.apk 来自第一个命令。有时它不完全是包名称。
在我的例子中,它是 $package_name-1/base.apk
【讨论】:
如果您喜欢 Mesut 的回答,请给他一个 'up' :) 在这里,对于其他任何人来说半自动化(所以我们可以将旧版本导入 Firebase App Distribution,因为有时需要测试更新/迁移):adb pull `adb shell pm path your.base.package.name | sed 's/package://'` & mv base.apk YourApp-1.2.3-staging.apk
(或任何命名方案你喜欢...)【参考方案4】:
如果您只想下载特定版本,例如“1.0(143)”,那么您可以在测试版应用中选择该版本并下载。
如果您需要从同一构建中上传多个 apk(例如为每个部署环境(例如预验证、验证、生产)上传一个 apk),那么您需要设置您的 gradle 来为每个部署环境定义 productFlavors,如下所示:
android
...
flavorDimensions "deploymentEnvironment"
productFlavors
prevalidation
dimension "deploymentEnvironment"
validation
dimension "deploymentEnvironment"
production
dimension "deploymentEnvironment"
...
然后,您使用以下 gradle 任务作为说明性示例,将来自同一个构建(每个目标部署环境一个)的多个 APK 发布到同一个 Fabric 项目。实际任务取决于为您的项目定义的变体:
./gradlew -s assemblePrevalidationRelease assembleValidationRelease
./gradlew -s crashlyticsUploadDistributionPrevalidationRelease crashlyticsUploadDistributionValidationRelease
Fabric 控制台测试版页面确实显示了这两个 apk,您可以选择下载并安装其中一个。唯一缺少的部分是两个变体被列为完全相同(因为它们具有相同的 versionName 和 versionCode)。如果 Fabric 控制台除了版本/构建信息之外还显示实际的 apk 名称,这可以很容易地解决。我希望出色的 Fabric 团队能够尽快解决这个小功能请求。
在此之前,我使用的一种解决方法是根据 Fabric beta 控制台中的顺序识别构建(有风险但有效),并将目标部署信息放在 Fabric 中给定构建的每个 apk 的发行说明中。
【讨论】:
以上是关于从 Fabric Beta 下载 Android APK 文件的主要内容,如果未能解决你的问题,请参考以下文章
在 Fabric Crashlytics 中添加了无法下载 App 的测试设备或 Beta 用户
从 Playstore 下载内部测试版时,Android 12 beta 5 应用链接不会自动验证