在应用程序归档中是否有自动的TestFlight上传脚本?
我发现Testflight支持通过API调用http://testflightapp.com/api/builds.format
上传应用程序。 它接受应用程序包,dsyms,应用程序信息和其他。
所以我的问题是下一个:是否有任何自动脚本的Xcode将上传到“档案”操作后的构build到Testflight? 请分享链接。
解决scheme在这里(Mac OS X 10.8):
1)遵循本手册并设置执行后脚本
2)删除用下一条规则replace“echo”string:
#!/bin/bash # # (Above line comes out when placing in Xcode scheme) # API_TOKEN="<YOUR-TESTFLIGHT-API-TOKEN>" TEAM_TOKEN="<YOUR-TESTFLIGHT-TEAM-TOKEN>" SIGNING_IDENTITY="iPhone Developer" PROVISIONING_PROFILE="${HOME}/Library/MobileDevice/Provisioning Profiles/<YOUR-PROFILE-NAME>.mobileprovision" LOG="/tmp/testflight.log" GROWL="/usr/bin/terminal-notifier -title Xcode -message" DATE=$( /bin/date +"%Y-%m-%d" ) ARCHIVE=$( /bin/ls -t "${HOME}/Library/Developer/Xcode/Archives/${DATE}" | /usr/bin/grep xcarchive | /usr/bin/sed -n 1p ) DSYM="${HOME}/Library/Developer/Xcode/Archives/${DATE}/${ARCHIVE}/dSYMs/${PRODUCT_NAME}.app.dSYM" APP="${HOME}/Library/Developer/Xcode/Archives/${DATE}/${ARCHIVE}/Products/Applications/${PRODUCT_NAME}.app" #/usr/bin/open -a /Applications/Utilities/Console.app $LOG #echo -n "Creating .ipa for ${PRODUCT_NAME}... " > $LOG ${GROWL} "Creating .ipa for ${PRODUCT_NAME}" /bin/rm "/tmp/${PRODUCT_NAME}.ipa" /usr/bin/xcrun -sdk iphoneos PackageApplication -v "${APP}" -o "/tmp/${PRODUCT_NAME}.ipa" --sign "${SIGNING_IDENTITY}" --embed "${PROVISIONING_PROFILE}" #echo "done." >> $LOG ${GROWL} "Created .ipa for ${PRODUCT_NAME}" #echo -n "Zipping .dSYM for ${PRODUCT_NAME}..." >> $LOG ${GROWL} "Zipping .dSYM for ${PRODUCT_NAME}" /bin/rm "/tmp/${PRODUCT_NAME}.dSYM.zip" /usr/bin/zip -r "/tmp/${PRODUCT_NAME}.dSYM.zip" "${DSYM}" #echo "done." >> $LOG ${GROWL} "Created .dSYM for ${PRODUCT_NAME}" #echo -n "Uploading to TestFlight... " >> $LOG ${GROWL} "Uploading to TestFlight" /usr/bin/curl "http://testflightapp.com/api/builds.json" \ -F file=@"/tmp/${PRODUCT_NAME}.ipa" \ -F dsym=@"/tmp/${PRODUCT_NAME}.dSYM.zip" \ -F api_token="${API_TOKEN}" \ -F team_token="${TEAM_TOKEN}" \ -F notes="Build uploaded automatically from Xcode." #echo "done." >> $LOG ${GROWL} "Uploaded to TestFlight" /usr/bin/open "https://testflightapp.com/dashboard/builds/"
3)在Finder中显示configuration文件:转到Organazier / Devices / Provisionconfiguration文件,然后右键单击您的configuration文件,然后单击“在finder中显示”。 复制configuration文件名称并粘贴到PROVISIONING_PROFILEvariables而不是<YOUR-PROFILE-NAME>
4)打开terminal并安装terminal通知器 :
sudo gem install terminal-notifier
5)你准备好了:)
这是一个很好的教程..可能对你有用:
http://developmentseed.org/blog/2011/sep/02/automating-development-uploads-testflight-xcode/
如果你想把它集成到rake任务中,我也为此创build了一个ruby gem:
gem install testflight_upload
来源于我的github这里
这里有一个很好的收集的实用程序http://nomad-cli.com/
我最终使用了Shenzen来自动化构build和testing部署。
深圳已经停产,可以改用飞行员 。 这是一个基于Ruby的工具,可以上传新版本并pipe理您的testing版testing人员。 在它之下它使用iTunes运输者和飞船 。