iOS从证书申请到打包发布

2017-11-01  本文已影响0人  宋00

参考链接:

申请证书:http://blog.csdn.net/jingyipo/article/details/51596135

上架流程:http://blog.csdn.net/yjxommm2005/article/details/72842249

证书必备:

首先要准备好“苹果全球开发者关系证书”(我的电脑上已有)

在苹果开发者后台申请证书之前,还需要准备CSR文件,(我之前在弄真机调试时已经在桌面保存的有0816CertificateSigningRequest.certSigningRequest)

生产证书(未获取)由于有申请个数限定,要用时再申请吧

已申请ios_development.cer

App ID (也就是Xcode中的boundle ID)这个我也有com.aidongsports.gmfClient

授权文件(没弄)

已弄aps.cer

distribution(名字:GMFProfileDistribution.mobileprovision)

科普相关证书概念:

Cirtification证书:是对电脑开发资格的认证,分为两种:

Developer Certification(开发证书):安装在电脑上提供权限,开发人员通过设备进行真机调试,可以生成副本供多台电脑安装。

Distribution Certification(发布证书):安装在电脑上提供发布iOS程序的权限,开发人员可以制作测试版和发布版的程序

打包步骤:

一、导出js bundle 包和图片资源

在根目录新建release_ios文件

执行命令

其中我们常使用的一线命令选项:

--entry-file ,ios或者android入口的js名称,比如index.ios.js

--platform ,平台名称(ios或者android)

--dev ,设置为false的时候将会对JavaScript代码进行优化处理。

--bundle-output, 生成的jsbundle文件的名称,比如./ios/bundle/index.ios.jsbundle

--assets-dest 图片以及其他资源存放的目录,比如./ios/bundle

react-native bundle --entry-file index.ios.js --platform ios --dev false --bundle-output release_ios/main.jsbundle --assets-dest release_ios/

生成了这样的目录

二、将js bundle包和图片资源导入到iOS项目中

这一步我们需要用到XCode,选择assets文件夹与main.jsbundle文件将其拖拽到XCode的项目导航面板中即可

拖动的时候选择这个。。。

修改AppDelegate.m文件:

注意对应自己的jsbundle的名字

//jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index.ios" fallbackResource:nil];

jsCodeLocation = [[NSBundlemainBundle]URLForResource:@"main"withExtension:@"jsbundle"];

到目前为止呢,我们已经将js bundle包和图片资源导入到iOS项目中,接下来我们就可以发布我们的iOS应用了。

三、发布iOS应用

设置release模式,在Xcode左上角

在release下,运行,控制台就不会打印语句,项目上线可节约内存。

Archive 时报错

ld: bitcode bundle could not be generated because '/Users/steven/Projects/gmfPro/gmfPro/gmfPro/node_modules/react-native-baidu-map/ios/lib/BaiduMapAPI_Radar.framework/BaiduMapAPI_Radar(BMKRadarOption.o)' was built without full bitcode. All object files and libraries for bitcode must be generated from Xcode Archive or Install build file '/Users/steven/Projects/gmfPro/gmfPro/gmfPro/node_modules/react-native-baidu-map/ios/lib/BaiduMapAPI_Radar.framework/BaiduMapAPI_Radar' for architecture armv7

clang: error: linker command failed with exit code 1 (use -v to see invocation)

解决办法:

上一篇下一篇

猜你喜欢

热点阅读