Bugly符号表上传方案

符号表上传问题

最近发现项目中的符号表上传会卡住XCode打包,极度影响打包操作,所以后来就将bugly推荐的脚本上传.sh文件删除了,但是删除之后,dsym符号表就得通过手动上传的方式进行了,但是手动上传每次都要更改版本号,变得就相当麻烦了。

解决方案

为了保证每次上完线之后能够最快的将符号表上传到bugly,这里有两种方案可供选择:

方案一:通过curl 手动上传(bugly推荐方式)

curl -k 
"[https://api.bugly.qq.com/openapi/file/upload/symbol?app_key=XXXX&app_id=XXXX](https://api.bugly.qq.com/openapi/file/upload/symbol?app_key=XXXX&app_id=XXXX)" --form "api_version=XXXX" --form "app_id=XXXX" --form "app_key=XXXX" --form "symbolType=2" --form "bundleId=XXXX" --form "productVersion=XXXX" --form "channel=xxx" --form "fileName=app.dSYM.zip" --form "[[email protected]](mailto:[email protected])" --verbose

方案二:通过fastlane自动化上传dsym符号表文件(实质也是通过curl)

通过fastlane自动配置有一点好处就是能够自动化上传dsym文件,不用在手动改动上传的版本号,在通过fastlane打包的过程中就能将符号表上传至bugly,通过lane管理更简单便捷

######################### Bugly上传 DSYM files ################################

#每次版本上线之后,请使用fastlane 进行bugly的符号文件上传

#demo--》 fastlane ios buglyDSYM

#该lane采用的是curl进行上传

#默认的符号表文件在 "~/资源库/Developer/Xcode/Archives/" 路径下

#########################################################################

lane :buglyDSYM  do 

 dirPath = Pathname.new(File.dirname(__FILE__)).realpath
 infoPlistPath =  "#{dirPath}/../YourProjectName/Info.plist"
  DSYMFilePath  =  "#{dirPath}/build/app.dSYM.zip"

 version =  `/usr/libexec/PlistBuddy -c \"print CFBundleShortVersionString\" \"#{infoPlistPath}\"`
 buildVersion =  `/usr/libexec/PlistBuddy -c \"print CFBundleVersion\" \"#{infoPlistPath}\"`

  #通过curl上传符号表
  puts  "version:#{version} build:#{buildVersion}"
  puts  `curl -k \"[https://api.bugly.qq.com/openapi/file/upload/symbol?app_key=XXXX&app_id=XXXX\](https://api.bugly.qq.com/openapi/file/upload/symbol?app_key=XXXX&app_id=XXXX)" --form \"api_version=#{version}\" --form \"app_id=XXXX\" --form \"app_key=XXXX\" --form \"symbolType=2\" --form \"bundleId=XXXX\" --form \"productVersion=#{buildVersion}\" --form \"channel=fastlane\" --form \"fileName=app.dSYM.zip\" --form \"file=@#{DSYMFilePath}\" --verbose`

end

你可能感兴趣的:(Bugly符号表上传方案)