ReactNative 自动化打包

export NODE_BINARY=/usr/local/bin/node
###build
rm -rf app/build
/usr/local/bin/react-native link
/usr/local/bin/react-native bundle --platform ios --assets-dest ./ios/bundle --dev false --entry-file index.ios.js --bundle-output ./ios/bundle/main.jsbundle
cd ios
\cp -rf ~/***{你的工程}.pbxproj ***.xcodeproj/project.pbxproj

// 授权jenkins时候有需要
security unlock-keychain -p "***{本机密码}" ${HOME}/Library/Keychains/login.keychain

xcodebuild archive -scheme ***{项目target} -configuration Realse -archivePath ~/Desktop/***.xcarchive    
xcodebuild -exportArchive -archivePath ~/Desktop/***.xcarchive -exportOptionsPlist DMS/Info.plist -exportPath ~/Desktop/***{导出目录}

Info.plist 打包的配置信息 可以配置的字段(直接粘一下)

Available keys for -exportOptionsPlist:

compileBitcode : Bool

    For non-App Store exports, should Xcode re-compile the app from bitcode? Defaults to YES.

embedOnDemandResourcesAssetPacksInBundle : Bool

    For non-App Store exports, if the app uses On Demand Resources and this is YES, asset packs are embedded in the app bundle so that the app can be tested without a server to host asset packs. Defaults to YES unless onDemandResourcesAssetPacksBaseURL is specified.

iCloudContainerEnvironment

    For non-App Store exports, if the app is using CloudKit, this configures the "com.apple.developer.icloud-container-environment" entitlement. Available options: Development and Production. Defaults to Development.

manifest : Dictionary

    For non-App Store exports, users can download your app over the web by opening your distribution manifest file in a web browser. To generate a distribution manifest, the value of this key should be a dictionary with three sub-keys: appURL, displayImageURL, fullSizeImageURL. The additional sub-key assetPackManifestURL is required when using on demand resources.

method : String

    Describes how Xcode should export the archive. Available options: app-store, ad-hoc, package, enterprise, development, and developer-id. The list of options varies based on the type of archive. Defaults to development.

onDemandResourcesAssetPacksBaseURL : String

    For non-App Store exports, if the app uses On Demand Resources and embedOnDemandResourcesAssetPacksInBundle isn't YES, this should be a base URL specifying where asset packs are going to be hosted. This configures the app to download asset packs from the specified URL.

teamID : String

    The Developer Portal team to use for this export. Defaults to the team used to build the archive.

thinning : String

    For non-App Store exports, should Xcode thin the package for one or more device variants? Available options:  (Xcode produces a non-thinned universal app),  (Xcode produces a universal app and all available thinned variants), or a model identifier for a specific device (e.g. "iPhone7,1"). Defaults to .

uploadBitcode : Bool

    For App Store exports, should the package include bitcode? Defaults to YES.

uploadSymbols : Bool

    For App Store exports, should the package include symbols? Defaults to YES.

你可能感兴趣的:(ReactNative 自动化打包)