我正在尝试使用 Fastlane 构建 Android 版本并将其发布到 PlayStore,但是当我运行该通道时,输出为:
Could not find release for version code '6' to update changelog
我的快速文件:
default_platform(:android)
platform :android do
lane :release do
gradle(
task: "bundle",
build_type: "Release",
)
upload_to_play_store(
track: "internal",
skip_upload_changelogs: true,
skip_upload_apk: true,
version_name: "2.0.0",
version_code: 6,
)
end
end
Run Code Online (Sandbox Code Playgroud) 我在使用 GitHub Actions 时遇到问题。当我打电话时,productsign工作就挂起了。在搜索互联网时,该作业似乎试图要求用户输入密码,但我没有从日志中收到任何错误或反馈。这项工作永远悬而未决。当在我自己的计算机上运行时,一切都按预期运行并且 .pkg 已签名。
我的工作流程步骤如下
- name: Build & Sign Installer
run: |
export LC_ALL=en_US.UTF-8
export LANG=en_US.UTF-8
(cd fastlane && ./decrypt_secret.sh)
carthage update --use-xcframeworks --platform macOS
bundle exec fastlane set_release_version
bundle exec fastlane mac install_certificates
bundle exec fastlane mac build_main_app
bundle exec fastlane mac build_updater
bundle exec fastlane mac build_installer
(cd installer && productsign --sign <identity> app-1.0.0.pkg app-1.0.0-signed.pkg)
Run Code Online (Sandbox Code Playgroud)
我尝试了很多不同的解决方案,但没有任何效果
security import ${P12_FILE} -k ${KEYCHAIN_PATH} -P ${P12_PASSWORD} -Asecurity import ${P12_FILE} -k ${KEYCHAIN_PATH} -P ${P12_PASSWORD} -T /usr/bin/productsign …我\xe2\x80\x99在我的工作中继承了一个React Native项目,该项目使用bitrise构建应用程序版本并将其部署到应用程序商店,并使用Fastlane匹配管理所有证书和代码签名。
\nI\xe2\x80\x99ve 突然开始在运行此命令的步骤中出现以下问题 -xcodebuild "-exportArchive" "-archivePath" ...
Resolving CodeSignGroups...\nResolving CodeSignGroups...\nFiltering CodeSignInfo groups for target capabilities\nFiltering CodeSignInfo groups for export method\nApp was signed with NON Xcode managed profile when archiving,\nonly NOT Xcode managed profiles are allowed to sign when exporting the archive.\nRemoving Xcode managed CodeSignInfo groups\nFailed to find Codesign Groups\ngenerated export options content:\n<?xml version="1.0" encoding="UTF-8"?>\n<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">\n<plist version="1.0">\n <dict>\n <key>method</key>\n <string>development</string>\n </dict>\n</plist> <nil>\n[14:29:56] set -o pipefail && xcodebuild "-exportArchive" "-archivePath" "/var/folders/g2/xnd8hpjs50v433gfrybz2nxh0000gn/T/xcodeArchive091761673/Beryl.xcarchive" "-exportPath" "/var/folders/g2/xnd8hpjs50v433gfrybz2nxh0000gn/T/xcodeIPAExport525207508/exported" …Run Code Online (Sandbox Code Playgroud) 我们在 AzureDevOps 管道中使用 fastlane 将 .ipa 文件上传到 TestFlight。直到最近,当一些构建没有出现在 TestFlight 上时,它才工作得很好。我从日志中发现,不在 TF 中的构建也在那里
2022-10-25T03:41:38.0866400Z [03:41:38]:软件资产已成功交付。
当构建在 TestFlight 上时,日志中不存在此行。你知道这是怎么发生的吗?每次运行此程序时,我们都会自动增加内部版本号,因此我们永远不会有重复的应用程序版本。
fastlane 命令是(我混淆了一些 ID):
[命令]/usr/local/lib/ruby/gems/2.7.0/bin/fastlane Pilot upload -u *** -i /Users/runner/work/r1/a/output/myapplication.ipa -q XXXXXXXXX - com.myapplication.app --skip_submission true --skip_waiting_for_build_processing true -p 0123456899 -asc_provider XXXXXXXX
我为我的XCode项目设置了Fastlane以实现构建自动化.至少Fastfile(包含构建选项)应该在GIT中,但我也很高兴在GIT中也有Appfile(团队标识符).主要问题:Appfile应该包含我的苹果ID.样品:
apple_id "myid@gmail.com" # Your Apple email address
# Default team ID
team_id "AUE7D4LRRX"
for_platform :ios do
for_lane :production do
team_id '-' #reset team id
end
end
Run Code Online (Sandbox Code Playgroud)
是否有可能从apple/xcode首选项动态检索apple id?在当前的解决方案中,我无法将此Appfile添加到GIT,因为每个开发人员都拥有该文件的自己版本...当然,使用不同的苹果ID!
谢谢和最好的问候!
很抱歉这样一个新手问题,但我对如何使用提供的方法编写Fastlane脚本感到困惑.
我要做的是创建一个名为的变量message,可以传递给after_all函数,所以当我发布到Slack时,每个通道都可以拥有它自己的自定义消息:
put message # is this how to set a variable?
lane :alpha do
# This is what I'd like to do
message = "[Google Play] Alpha Channel Deployed"
end
after_all |lane, options| do
slack(message: message)
end
Run Code Online (Sandbox Code Playgroud)
谁能指出我正确的方向?我完全迷失了如何在Fastfile脚本中创建和传递不是来自命令行的变量
使用Jenkins的fastlane。Jenkins将pwd设置为目录,将其命名为directory1,该目录具有标准的Fastfile和fastlane子文件夹,如下所示:
MacBook-Pro:directory1 user$ tree
??? fastlane
? ??? Deliverfile
?
??? Fastfile
Run Code Online (Sandbox Code Playgroud)
然后,詹金斯从该目录执行fastlane。当使用需要路径的快速通道操作时,如果我使用假定工作目录为directory1的路径,则一切正常。不过,我不明白的是为什么当我通过使用sh操作甚至直接使用Ruby Dir.pwd从fastlane中查询pwd时,都给我值/ MacBook-Pro / directory1 / fastlane而不是正常工作我设置的/ MacBook-Pro / directory1目录。对于这里的目录,fastlane在做什么,我会丢失什么?
我得到的FASTLANE的误差为全面建设签署的apk作为assembleRelease APK,我想部署在Play商店中的更新,但是当我在当时的射击命令FASTLANE我得到了错误的increment_version_code。
Shubhams-MacBook-Air:ProjectPath shubhamsejpal$ fastlane beta
[?]
[23:33:51]: fastlane detected a Gemfile in the current directory
[23:33:51]: however it seems like you don't use `bundle exec`
[23:33:51]: to launch fastlane faster, please use
[23:33:51]:
[23:33:51]: $ bundle exec fastlane beta
[23:33:51]:
[23:33:51]: Get started using a Gemfile for fastlane https://docs.fastlane.tools/getting-started/ios/setup/#use-a-gemfile
[23:33:51]: WARNING: fastlane requires your locale to be set to UTF-8. To learn more go to https://docs.fastlane.tools/getting-started/ios/setup/#set-up-environment-variables
[23:33:52]: ----------------------------------------
[23:33:52]: --- Step: Verifying fastlane version ---
[23:33:52]: ---------------------------------------- …Run Code Online (Sandbox Code Playgroud) android android-studio fastlane fastlane-deliver fastlane-match
有谁知道如何通过Fastlane将dSYM上传到Firebase Crashlytics
这里有文档https://docs.fastlane.tools/actions/crashlytics/#crashlytics
但是我不知道从哪里获得apiToken,这似乎更多是没有关注Firebase的Crashlytics
谢谢
就像标题说的那样。我打算使用Visual Studio AppCenter。快速通道在哪里适合?如我所见,切换到VSAC时,fastlane变得多余了吗?还是我想念这里的大局?
fastlane ×10
ios ×3
android ×2
code-signing ×2
crashlytics ×2
macos ×2
xcode ×2
azure-devops ×1
bitrise ×1
directory ×1
firebase ×1
flutter ×1
git ×1
jenkins ×1
productsign ×1
react-native ×1
ruby ×1
testflight ×1