当前位置: 首页 > news >正文

react native踩坑日记(0): 如何配置 IOS React-native环境

最近要搞一个RN的demo,搞就搞吧,那就先把环境搭起来。搭就搭吧,这环境一搭就是一天。
给大家分享一下自己在搭建环境时所遇到的坑,和一些可以方便我们快速搭建环境的方法。

接下来的一系列操作:如果你有很稳定很迅速的科学上网方式,那就直接按照RN官方给的说明安装就行了

如果你已经安装了所有插件,但是运行项目失败,你可以直接跳转到第六步看起

我们也是按部就班的按照官方给的文档进行安装,只不过会有些需要注意的点。

  1. 安装Homebrew,因为RN官方推荐使用Homebrew安装nodeWatchman,当然你也可以选择其他的方式安装。
    在这里插入图片描述

如上图,点击浅蓝色区域,就可看到Homebrew的安装方式

  1. 安装nodeWatchman
    在这里插入图片描述
    node就不用说了,前端开发都知道的。
    Watchman是什么呢?RN官方是这样说的。
    Watchman则是由 Facebook 提供的监视文件系统变更的工具。安装此工具可以提高开发时的性能(packager 可以快速捕捉文件的变化从而实现实时刷新)

这里建议安装一下yarn,确实是会比npm快上那么一点

npm install -g yarn
  1. 安装Xcode,这个只需要到苹果商店安装即可,有8个多G,需要耐心等待一下。
  2. 安装CocoaPods,这CocoaPods很关键,后续安装苹果端依赖的重要东西,不可缺少。
    如果你安装了Homebrew,则可以使用brew install cocoapods进行安装,
    否则sudo gem install cocoapods
  3. 创建项目
npx react-native init AwesomeProject

创建完成后,并不是说就像文档中说的那样,按照如下这个步骤就可以运行起来了。
在这里插入图片描述

  1. 更换CocoaPods
    我们创建好项目需要安装对于的依赖,依赖的来源就是CocoaPods,但是之前安装源除非有科学上网的方式,否则就会慢到无法想象甚至失败,所以要更换CocoaPods源,实际官方文档有提供,可能是浏览的太快忽略了。
    我们需要访问这个网站, 清华大学开源软件镜像站(点击即可进入)
    按照如下步骤执行即可:
    在这里插入图片描述
    我记得这个安装也需要好长时间,请耐心等待。

  2. 安装依赖
    如果我们直接运行yarn react-native run-ios是会报错的,这个是时候需要执行以下步骤,前提是你完成了第六步,要不然会超级慢

cd ios
pod install

等待安装完成,完成后在执行

npm run ios 或者 yarn ios

这个时候才可能运行成功,如果运行失败可以留言,附上截图,看到会立马回复。

  1. Xcode打开
    如果你想要在Xcode中打开,只需直接打开IOS文件夹即可,打开以后可以command+r运行,也可以点击左上角的箭头运行。就可以在模拟器中打开了

  2. 运行到手机上
    运行到手机上,必须先给手机配置开发者权限,具体怎么配置自行百度。这个还是蛮复杂的。我的还是之前的公司有ios开发给配置的。

手机链接电脑在选择模拟器那里选择自己的手机
在这里插入图片描述
点击iphone 8区域
在这里插入图片描述
选择最上边的一个就是自己的手机。选中后点击箭头安装。这个时候可能会安装失败,造成的原因有以下几个可能

  • 1.没有给项目配置团队,文件名不是唯一的
  • 2.手机未配置开发者权限
  • 3.手机以配置开发者权限,但是安装超过了两个测试APP

2和3可能会出现同一个安装报错信息,区别就是去看看自己手机的设置里是否有一个这样的选项
在这里插入图片描述
如果有那就是第三个问题,没有那就去配置证书吧

第一个问题的解决方式:
在这里插入图片描述
如上图,在team处选择一个即可,如果有链接手机则会有一个与你apple id 同名的Team。
第二个框,需要修改名称,修改成唯一的。如果修改完成,下方区域是不会有相对应的警告或者报错信息。

第二个解决方式:

点击查看

第三解决方式:

在导航栏中找到:
在这里插入图片描述
进入到如下页面:
在这里插入图片描述
红框处会显示你已安装的app,删掉其中的某一个即可。

如果没有以上几个问题,软件安装成功后会自动打开。即可查看

http://www.lryc.cn/news/570726.html

相关文章:

  • 【提高】奶牛和草丛 USACO【C++】
  • 估计随机行走的覆盖面积
  • 基于NEON指令的图像旋转加速【armv7】
  • 基于ssm的学生作业管理系统
  • C#-从入门到精通-第12章 Windows应用程序高级控件
  • 如何使用deepseek编写测试计划
  • 科学计数法保留有效数字_分析化学中有效数字及其运算规则
  • C++题解(36) 2025年顺德区中小学生程序设计展示活动(初中组C++)换位(二)
  • 如何在ubuntu上安装flash_player
  • 本地安装discuz x2.5(论坛站)程序
  • BackTrack5(BT5)各版本下载
  • cd linux 镜像,解开 CDLinux 的iso映像文件
  • 战争
  • C语言空指针异常在Java中的解决方案
  • 各大搜索引擎网站提交入口
  • csdn博客登录不上-why?
  • mysql bulk update_Django bulk_create()、update()与数据库事务的效率对比分析
  • 超标量处理器设计9-执行
  • emule最新服务器地址,emule 国内服务器(最新emule服务器)
  • 关于2000W数据
  • 文件或目录损坏且无法读取怎么修复
  • Struts2中Action通配符的配置
  • [转]Linux下安装搜狗拼音输入法
  • 汇川SV660F伺服驱动器通过EtherCAT主站转Profinet网关接入到profinet系统
  • Qwen2.5-VL 是什么?
  • AI+预测3D新模型百十个定位预测+胆码预测+去和尾2025年6月15日第109弹
  • Linux下的优秀开源软件
  • css属性:图片使用filter属性使得position: fixed失效的情况
  • 如何使用github并且参与别人的开源项目
  • 用 Redis 都能实现哪些功能?这2万字+20张图给分析全了