react-native安装到手机进行pre-release测试

广告位招租
扫码页面底部二维码联系

通过react-native到cli工具本文版权归作者所有,未经授权不得转载。【关注微信公众号:wwwtangshuangnet】创建并开发一个react-native应【未经授权禁止转载】【作者:唐霜】用非常方便,甚至是一行命令解决所有开发中未经授权,禁止复制转载。本文版权归作者所有,未经授权不得转载。的问题。应用开发的差不多之后,打算安装到【原创不易,请尊重版权】未经授权,禁止复制转载。手机上进行测试,现在这个版本也非常方便,【作者:唐霜】【本文首发于唐霜的博客】只需要手机连到xcode,直接run b【版权所有,侵权必究】【未经授权禁止转载】uild就可以了,之前要改局域网配置,现【关注微信公众号:wwwtangshuangnet】【关注微信公众号:wwwtangshuangnet】在也是免了,只要手机和电脑同处一个网络,【访问 www.tangshuang.net 获取更多精彩内容】【本文受版权保护】手机都可以方便的进行调试。

【本文受版权保护】【本文受版权保护】【关注微信公众号:wwwtangshua著作权归作者所有,禁止商业用途转载。本文版权归作者所有,未经授权不得转载。ngnet】

安装到手机上的坑

但当我们把手机连上电脑,直接执行run时转载请注明出处:www.tangshuang.net原创内容,盗版必究。,大部分都会报错,因为我们需要解决app本文版权归作者所有,未经授权不得转载。【未经授权禁止转载】lication的开发者账号问题。因为我本文版权归作者所有,未经授权不得转载。原创内容,盗版必究。们是测试,所以,不需要去付费,只需要在x著作权归作者所有,禁止商业用途转载。本文版权归作者所有,未经授权不得转载。code上添加登陆自己的开发者账号即可。本文作者:唐霜,转载请注明出处。【访问 www.tangshuang.net 获取更多精彩内容】具体怎么操作呢?

转载请注明出处:www.tangshua【原创不易,请尊重版权】【关注微信公众号:wwwtangshuangnet】ng.net未经授权,禁止复制转载。

1)手机连到电脑,连接时,如果弹出警告框【原创内容,转载请注明出处】【本文受版权保护】,选择信任该设备

【关注微信公众号:wwwtangshua【访问 www.tangshuang.net 获取更多精彩内容】转载请注明出处:www.tangshuang.netngnet】【版权所有】唐霜 www.tangshu【转载请注明来源】【原创内容,转载请注明出处】ang.net【本文首发于唐霜的博客】原创内容,盗版必究。

2)连接之后,进行开发者账号配置,如下图本文版权归作者所有,未经授权不得转载。本文作者:唐霜,转载请注明出处。

著作权归作者所有,禁止商业用途转载。【关注微信公众号:wwwtangshua【原创不易,请尊重版权】【访问 www.tangshuang.net 获取更多精彩内容】ngnet】

未经授权,禁止复制转载。原创内容,盗版必究。【原创内容,转载请注明出处】著作权归作者所有,禁止商业用途转载。

第一次使用xcode的时候,并没有设置自本文版权归作者所有,未经授权不得转载。【作者:唐霜】己的开发者账号,因此,要自己输入登陆,只【作者:唐霜】【本文首发于唐霜的博客】需要在team那个下拉中找到最后一项,打【原创内容,转载请注明出处】【本文首发于唐霜的博客】开账户面包添加即可,只要你登陆了,它会自转载请注明出处:www.tangshuang.net【本文首发于唐霜的博客】动下载开发者账号的一些信息。

【本文受版权保护】本文版权归作者所有,未经授权不得转载。【本文受版权保护】【作者:唐霜】

3)Tests里面也要选择正确的账号,这【版权所有】唐霜 www.tangshuang.net本文作者:唐霜,转载请注明出处。里是坑,我一开始没有选这里,总是报错无法著作权归作者所有,禁止商业用途转载。未经授权,禁止复制转载。通过,它是在做test的时候使用的账号

原创内容,盗版必究。【原创不易,请尊重版权】【原创不易,请尊重版权】

【版权所有】唐霜 www.tangshu【原创不易,请尊重版权】【版权所有,侵权必究】ang.net【原创不易,请尊重版权】原创内容,盗版必究。【版权所有】唐霜 www.tangshu本文作者:唐霜,转载请注明出处。原创内容,盗版必究。ang.net

4)在device里面选择你自己的手机作【本文首发于唐霜的博客】【本文受版权保护】为目标设备

【关注微信公众号:wwwtangshua未经授权,禁止复制转载。转载请注明出处:www.tangshuang.netngnet】【原创不易,请尊重版权】【转载请注明来源】

本文作者:唐霜,转载请注明出处。【作者:唐霜】【转载请注明来源】

【访问 www.tangshuang.n【作者:唐霜】【版权所有】唐霜 www.tangshuang.netet 获取更多精彩内容】【版权所有】唐霜 www.tangshu【作者:唐霜】著作权归作者所有,禁止商业用途转载。ang.net【本文首发于唐霜的博客】

5)点击界面左上角的三角形按钮运行构建,未经授权,禁止复制转载。【关注微信公众号:wwwtangshuangnet】xcode会自动将应用安装到你的ipho【本文受版权保护】转载请注明出处:www.tangshuang.netne上,但是,第一次安装会有一个警告框弹【原创内容,转载请注明出处】转载请注明出处:www.tangshuang.net出,这主要是因为我们通过普通开发者账号构【原创不易,请尊重版权】【转载请注明来源】建的应用没有证书,默认是不被信任的,你需原创内容,盗版必究。【本文首发于唐霜的博客】要回到你的iphone中,打开“sett【本文首发于唐霜的博客】著作权归作者所有,禁止商业用途转载。ings-general- Profil【原创内容,转载请注明出处】转载请注明出处:www.tangshuang.netes & Device Mana未经授权,禁止复制转载。【关注微信公众号:wwwtangshuangnet】gement”,点击你的开发者账号,进去【访问 www.tangshuang.net 获取更多精彩内容】【作者:唐霜】之后点击“Trust”字样的选项。信任之【访问 www.tangshuang.net 获取更多精彩内容】本文版权归作者所有,未经授权不得转载。后,你就可以在自己的iphone上打开刚原创内容,盗版必究。【本文首发于唐霜的博客】安装的应用。

【本文首发于唐霜的博客】本文版权归作者所有,未经授权不得转载。【转载请注明来源】

安装一个Pre-release测试版本

但是react-native的cli工具转载请注明出处:www.tangshuang.net著作权归作者所有,禁止商业用途转载。仅默认提供了开发阶段的工具,即react【版权所有】唐霜 www.tangshuang.net本文版权归作者所有,未经授权不得转载。-native start工具,它的工作【本文受版权保护】【访问 www.tangshuang.net 获取更多精彩内容】机制是,在你的设备(模拟器)上打开app【本文受版权保护】原创内容,盗版必究。之后,连接到你当前进行开发的电脑上,下载本文版权归作者所有,未经授权不得转载。【本文首发于唐霜的博客】jsbundle并解析执行,当你触发刷新【本文首发于唐霜的博客】【版权所有,侵权必究】(ctrl+D)的时候,app内部通过s【本文首发于唐霜的博客】【原创不易,请尊重版权】ocket发送消息给电脑,电脑上的服务会【本文受版权保护】原创内容,盗版必究。重新build一个jsbundle,并通著作权归作者所有,禁止商业用途转载。本文版权归作者所有,未经授权不得转载。知app,app收到通知后,会重新下载这【版权所有】唐霜 www.tangshuang.net【转载请注明来源】个新的jsbundle,并重新解析执行。【版权所有,侵权必究】本文版权归作者所有,未经授权不得转载。另外,debug模式(等下说)下很多调试未经授权,禁止复制转载。本文作者:唐霜,转载请注明出处。用的东西会出现在app界面上,例如app【版权所有,侵权必究】【本文首发于唐霜的博客】加载jsbundle的进度、app内部报【作者:唐霜】【作者:唐霜】错底部弹出黄色区域进行提示。这些东西都是本文作者:唐霜,转载请注明出处。【转载请注明来源】为了开发方便进行使用的,而不是为了测试。

原创内容,盗版必究。本文版权归作者所有,未经授权不得转载。【关注微信公众号:wwwtangshua【本文受版权保护】【访问 www.tangshuang.net 获取更多精彩内容】ngnet】

当我们要创建一个pre-release的【关注微信公众号:wwwtangshuangnet】【转载请注明来源】测试版本安装到手机上时,我们一方面要去除【作者:唐霜】【本文受版权保护】那些开发才用到的界面信息,另一方面要创建【未经授权禁止转载】原创内容,盗版必究。一个静态的jsbundle放在app内部转载请注明出处:www.tangshuang.net【转载请注明来源】一直使用,而不是每次启动app都要从某个著作权归作者所有,禁止商业用途转载。【本文受版权保护】地址去下载。接下来,我们就来一步一步操作转载请注明出处:www.tangshuang.net【原创内容,转载请注明出处】

本文版权归作者所有,未经授权不得转载。本文作者:唐霜,转载请注明出处。【本文受版权保护】

1)APP图标

【访问 www.tangshuang.n未经授权,禁止复制转载。【本文受版权保护】et 获取更多精彩内容】本文作者:唐霜,转载请注明出处。【作者:唐霜】【原创内容,转载请注明出处】

【版权所有】唐霜 www.tangshu【关注微信公众号:wwwtangshuangnet】【本文首发于唐霜的博客】ang.net【未经授权禁止转载】【本文首发于唐霜的博客】【作者:唐霜】

在xcode左侧的项目中,找到image本文版权归作者所有,未经授权不得转载。本文作者:唐霜,转载请注明出处。s.xcassets目录,点击之后,在右【版权所有,侵权必究】【作者:唐霜】侧点击AppIcon。这个地方上传ico【原创不易,请尊重版权】【关注微信公众号:wwwtangshuangnet】n比较坑,没有按钮,而是要你打开ifin【版权所有】唐霜 www.tangshuang.net【版权所有】唐霜 www.tangshuang.netder,然后把icon拖到对应的图标位置【版权所有,侵权必究】本文作者:唐霜,转载请注明出处。里面去。你需要准备如下尺寸的icon:1著作权归作者所有,禁止商业用途转载。【本文首发于唐霜的博客】024, 180, 120, 87, 8原创内容,盗版必究。转载请注明出处:www.tangshuang.net0, 60, 58, 40。你尽管随便拖【版权所有,侵权必究】【本文首发于唐霜的博客】图片进去,尺寸不符的时候会有警告提示图标著作权归作者所有,禁止商业用途转载。【作者:唐霜】出现。

未经授权,禁止复制转载。本文版权归作者所有,未经授权不得转载。【版权所有】唐霜 www.tangshu【版权所有,侵权必究】【版权所有,侵权必究】ang.net

2)修改启动界面

著作权归作者所有,禁止商业用途转载。【访问 www.tangshuang.n原创内容,盗版必究。【本文首发于唐霜的博客】et 获取更多精彩内容】未经授权,禁止复制转载。

修改位置在LaunchScreen里面,【关注微信公众号:wwwtangshuangnet】【原创不易,请尊重版权】也可以在文件ios/[AppName]/著作权归作者所有,禁止商业用途转载。转载请注明出处:www.tangshuang.netBase.lproj/LaunchScr【访问 www.tangshuang.net 获取更多精彩内容】【作者:唐霜】een.xib里面修改。

未经授权,禁止复制转载。本文版权归作者所有,未经授权不得转载。【未经授权禁止转载】原创内容,盗版必究。

3)创建一个静态的jsbundle

转载请注明出处:www.tangshua原创内容,盗版必究。【原创内容,转载请注明出处】ng.net原创内容,盗版必究。

react-native的cli工具(r【版权所有】唐霜 www.tangshuang.net本文版权归作者所有,未经授权不得转载。eact-native-cli)默认只在【本文首发于唐霜的博客】本文版权归作者所有,未经授权不得转载。我们的package.json里面加了s【转载请注明来源】本文作者:唐霜,转载请注明出处。tart命令,没有加build命令,因此【原创不易,请尊重版权】【访问 www.tangshuang.net 获取更多精彩内容】,我们要自己添加一个命令用来创建一个js【未经授权禁止转载】【本文受版权保护】bundle。

【版权所有】唐霜 www.tangshu【本文首发于唐霜的博客】【本文受版权保护】ang.net本文作者:唐霜,转载请注明出处。未经授权,禁止复制转载。
  "scripts": {
    "start": "react-native start",
    "build:ios": "react-native bundle --entry-file index.js --platform ios --dev false --bundle-output ios/main.jsbundle --assets-dest ios",
    "test": "jest"
  },

上面的红色语句是从官网的文档搬过来的,接转载请注明出处:www.tangshuang.net【访问 www.tangshuang.net 获取更多精彩内容】下来你要在命令行里面执行:

原创内容,盗版必究。【本文受版权保护】
npm run build:ios

不过这里有个点,就是我直接在npm sc著作权归作者所有,禁止商业用途转载。著作权归作者所有,禁止商业用途转载。ript命令里面使用了react-nat本文版权归作者所有,未经授权不得转载。原创内容,盗版必究。ive,如果你要在服务器上面做CI集成,原创内容,盗版必究。【版权所有】唐霜 www.tangshuang.net为了保险起见,可以把上面的react-n【版权所有】唐霜 www.tangshuang.net本文版权归作者所有,未经授权不得转载。ative替换为“node node_modules/react-native/local-cli/cli.js”这样能保证软链失效的时候可以做buil本文版权归作者所有,未经授权不得转载。【转载请注明来源】d。

【本文首发于唐霜的博客】本文版权归作者所有,未经授权不得转载。原创内容,盗版必究。原创内容,盗版必究。

执行完上面的npm命令之后,你可以在io【原创不易,请尊重版权】【原创内容,转载请注明出处】s目录下找到main.jsbundle这著作权归作者所有,禁止商业用途转载。【作者:唐霜】个文件,而且assets文件夹也产生了。

本文作者:唐霜,转载请注明出处。【本文受版权保护】未经授权,禁止复制转载。本文作者:唐霜,转载请注明出处。

4)修改jsbundle获取位置

著作权归作者所有,禁止商业用途转载。【版权所有】唐霜 www.tangshu未经授权,禁止复制转载。【关注微信公众号:wwwtangshuangnet】ang.net【作者:唐霜】【作者:唐霜】

在ios/[AppName]/Base.【未经授权禁止转载】【版权所有】唐霜 www.tangshuang.netlproj/AppDelegate.m文【本文首发于唐霜的博客】【本文受版权保护】件中找到jsCodeLocation,把原创内容,盗版必究。著作权归作者所有,禁止商业用途转载。它的赋值语句进行修改:

【版权所有,侵权必究】未经授权,禁止复制转载。原创内容,盗版必究。【未经授权禁止转载】
  jsCodeLocation = [[NSBundle mainBundle] URLForResource:@"main" withExtension:@"jsbundle"];
  //jsCodeLocation = [[RCTBundleURLProvider sharedSettings] jsBundleURLForBundleRoot:@"index" fallbackResource:nil];

下面被注释掉的,是react-nativ未经授权,禁止复制转载。【访问 www.tangshuang.net 获取更多精彩内容】e生成项目的时候使用的,也就是我们开发时【转载请注明来源】【访问 www.tangshuang.net 获取更多精彩内容】的配置,上面一句是官方文档里面给的,用来转载请注明出处:www.tangshuang.net【版权所有,侵权必究】加载静态jsbundle的。

【版权所有】唐霜 www.tangshu未经授权,禁止复制转载。【访问 www.tangshuang.net 获取更多精彩内容】ang.net【关注微信公众号:wwwtangshua【访问 www.tangshuang.net 获取更多精彩内容】原创内容,盗版必究。ngnet】

5)调整build模式

未经授权,禁止复制转载。原创内容,盗版必究。【原创内容,转载请注明出处】著作权归作者所有,禁止商业用途转载。

在xcode中,要修改debug模式为r本文作者:唐霜,转载请注明出处。原创内容,盗版必究。elease模式:

【版权所有】唐霜 www.tangshu本文版权归作者所有,未经授权不得转载。【版权所有】唐霜 www.tangshuang.netang.net本文作者:唐霜,转载请注明出处。

【访问 www.tangshuang.n【转载请注明来源】【版权所有】唐霜 www.tangshuang.netet 获取更多精彩内容】本文作者:唐霜,转载请注明出处。【未经授权禁止转载】

【版权所有】唐霜 www.tangshu【未经授权禁止转载】【访问 www.tangshuang.net 获取更多精彩内容】ang.net【转载请注明来源】【版权所有,侵权必究】【原创不易,请尊重版权】

左侧有好几个选项,都要在右边修改为rel本文作者:唐霜,转载请注明出处。本文版权归作者所有,未经授权不得转载。ease。

本文版权归作者所有,未经授权不得转载。转载请注明出处:www.tangshua【关注微信公众号:wwwtangshuangnet】【版权所有】唐霜 www.tangshuang.netng.net【版权所有】唐霜 www.tangshu原创内容,盗版必究。【本文受版权保护】ang.net

6)run

【访问 www.tangshuang.n著作权归作者所有,禁止商业用途转载。【未经授权禁止转载】et 获取更多精彩内容】【原创内容,转载请注明出处】【原创不易,请尊重版权】

完成上面之后,点击run按钮,将应用安装【本文首发于唐霜的博客】本文作者:唐霜,转载请注明出处。到手机上,可以在手机上愉快测试了。

原创内容,盗版必究。著作权归作者所有,禁止商业用途转载。本文版权归作者所有,未经授权不得转载。

2018-06-18 6240

为价值买单,打赏一杯咖啡

本文价值62.4RMB