一篇文章教会你如何在IOS真机上完美运行React Native

一篇文章教会你如何在IOS真机上完美运行React Native

  • 项目初始化
  • 项目配置
  • 可能遇到的问题
    • 没有账号也没有Team
    • 设备上没有打开开发者模式,也没有信任开发者证书
  • 无线调试

项目初始化

在终端使用**npx react-native init ProjectName**初始化React Native项目。

进入项目目录后,如果项目是第一次首次运行,你需要先进入项目的iOS目录,在终端输入**open ProjectName.xcworkspace,这个命令将会使用Xcode打开项目。**

npx react-native init ProjectName
cd ProjectName
cd ios
open ProjectName.xcworkspace

项目配置

在这里插入图片描述

使用Xcode打开项目后,如图所示,你需要按照如下步骤来进行项目的配置:

  1. 点击项目
  2. 选择TARGETS
  3. 前往Signing & Capabilities
  4. 选择你的Team

接着你点击Xcode左上角的运行按钮或者回到React Native项目根目录下运行yarn start应该就可以正常运行项目啦!

在这里插入图片描述

享受你的编程吧!

可能遇到的问题

没有账号也没有Team

在这里插入图片描述

在Xcode中添加Team非常重要,因为这关系到能否在真机上运行您的React Native应用。以下是添加Team的步骤:

  1. 打开Xcode,在顶部菜单栏选择**Xcode** -> Preferences(或者直接按下**Command** + **,**快捷键)。
  2. 在弹出的偏好设置窗口中,点击**Accounts**标签。
  3. 点击左下角的**+**号按钮来添加一个新的Apple ID。
  4. 在弹出的对话框中,选择**Apple ID,然后点击Continue**。
  5. 输入您的Apple ID和密码,然后点击**Next**。如果您开启了两因素验证,还需要输入验证代码。
  6. 登录成功后,您的Apple ID会显示在左侧的账户列表中。确保您已经注册了Apple开发者计划,否则您将无法在真机上运行应用。
  7. 关闭**Preferences**窗口,返回到您的项目。
  8. 在项目导航器中,选择您的项目(通常位于导航器窗口的最顶部)。
  9. 在主窗口中,选择**TARGETS**,然后选择您的项目。
  10. 在**Signing & Capabilities标签中,找到Team**下拉菜单。如果您已经添加了Apple ID并且是Apple开发者计划的成员,您应该能够在下拉菜单中看到与您的Apple ID关联的Team。
  11. 选择相应的Team。如果一切设置正确,Xcode将自动为您创建并管理开发证书、供应文件等。

完成以上步骤后,您就可以继续在真机上调试和运行您的React Native应用了。记得在您第一次尝试运行应用在您的iOS设备上时,可能需要在设备上信任开发者证书。

设备上没有打开开发者模式,也没有信任开发者证书

在这里插入图片描述
在这里插入图片描述

如果你遇到如图所示的问题,那你就是没有打开开发者模式也没有信任开发者证书。

在设备上打开开发者模式步骤如下:

在iOS设备上打开开发者模式通常涉及以下步骤:

  1. 更新iOS版本:首先确保您的iPhone或iPad更新到了最新的iOS版本。

  2. 打开设置应用:在您的iOS设备上找到并打开“设置”应用。

  3. 进入“隐私”:在设置菜单中,滚动找到并点击“隐私”。

    在这里插入图片描述

  4. 启用开发者模式(iOS 14及以上版本):

    • 滚动到页面底部,找到“开发者模式”。
    • 点击“开发者模式”,然后按照屏幕上的指示开启开发者模式。这可能需要您重启设备。

如果您没有看到“开发者模式”的选项,请尝试以下步骤:

  • 连接到Mac并使用Xcode:将您的iOS设备通过USB线连接到安装了Xcode的Mac。在Mac上启动Xcode,然后在Xcode中选择Window > Devices and Simulators。在出现的设备列表中,选择您的设备。Xcode会与设备通信并可能提示您是否允许设备与Xcode配对。接受后,设备应该就会进入开发者模式。
  • 信任计算机:连接设备到Mac后,如果设备屏幕上弹出“信任此电脑”的提示,请选择“信任”,并输入您的设备解锁密码。

一旦开发者模式被启用,您就可以安装测试应用、进行调试等开发者操作了。如果在启用开发者模式的过程中遇到困难,您可能需要查看苹果官方文档或者更新您的Xcode到最新版本。在一些iOS版本中,只有当您的设备与Xcode配对并且Xcode识别您的设备为开发设备后,"开发者模式"选项才会出现在设置中。

信任开发者证书的步骤如下:

  1. 在iPhone上,打开“设置”应用。
  2. 滚动到“通用”并点击它。
  3. 滚动到最底部,找到并点击“设备管理”或者“描述文件与设备管理”。

在这里插入图片描述

  1. 在“设备管理”页面中,找到您的开发者应用证书,它可能显示为您的Apple ID或者您的公司/应用名称。
  2. 点击这个证书,然后点击“信任”按钮。
  3. 在弹出的对话框中再次点击“信任”确认您的选择。

无线调试

在iOS设备上启用无线调试的步骤如下:

  1. 使用USB线将您的iOS设备连接到Mac。
  2. 打开Xcode,然后转到“Window”(窗口)> “Devices and Simulators”(设备与模拟器)。
  3. 在“Devices and Simulators”窗口中,选择“Devices”(设备)标签。
  4. 在左侧的设备列表中,找到并选择您的iOS设备。
  5. 勾选您的设备信息旁边的“Connect via network”(通过网络连接)复选框。
  6. 一旦勾选,Xcode将尝试通过网络与设备建立连接。这可能需要几秒钟的时间。成功连接后,设备旁边会出现一个网络图标。

在这里插入图片描述

在这里插入图片描述

在完成上述步骤后,您就可以在没有使用USB线连接的情况下,通过Wi-Fi进行调试了。但是,请注意以下几点:

  • 确保您的Mac和iOS设备连接到同一个Wi-Fi网络。
  • 如果您的设备或Mac进入睡眠模式,无线连接可能会断开。您可能需要重新唤醒它们以重新建立连接。
  • 在某些情况下,如果无法通过无线连接,可能需要重新插拔USB线来帮助Xcode识别设备。

开启无线调试后,您可以在没有物理连接的情况下部署和调试应用,这在某些开发场景下非常方便。

如果喜欢的话欢迎关注我的Twitter,我会经常更新技术前沿内容~

YuZou (@zouyu1121) on X

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/720099.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

力扣550 游戏玩法分析 IV

目录 题目描述 思路整理 1. 首次登录日期 2. 第二天登录 3. 计算比率 实现思路 完整代码及解释 题目描述 Table: Activity ----------------------- | Column Name | Type | ----------------------- | player_id | int | | device_id | int | | ev…

117.移除链表元素(力扣)

题目描述 代码解决 class Solution { public:ListNode* removeElements(ListNode* head, int val) {//删除头节点while(head!NULL&&head->valval){ListNode*tmphead;headhead->next;delete tmp;}//删除非头节点ListNode*curhead;while(cur!NULL&&cur-&g…

安卓虚拟机ART和Dalvik

目录 一、JVM和Dalvik1.1 基于栈的虚拟机字节码指令执行过程 1.2 基于寄存器的虚拟机 二、ART与Dalvikdex2aotAndroid N的运作方式 三、总结 一、JVM和Dalvik Android应用程序运行在Dalvik/ART虚拟机,并且每一个应用程序对应有一个单独的Dalvik虚拟机实例。 Dalvik…

Vue.js 实用技巧:深入理解 Vue.set 方法

🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》 🍚 蓝桥云课签约作者、上架课程《Vue.js 和 E…

20 个不同的 Python 函数实例

Python 是一种广泛使用的高级编程语言,其函数是 Python 编程中至关重要的概念之一。函数是一段可以重复使用的代码块,可以接收输入参数并返回输出结果。使用函数能够提高代码的可读性、可维护性和重用性。 基础知识 在 Python 中,函数使用关…

【如何在Docker中,修改已经挂载的卷(Volume)】

曾梦想执剑走天涯,我是程序猿【AK】 提示:添加投票!!! 目录 简述概要知识图谱 简述概要 如何在Docker中,修改已经挂载的卷(Volume) 知识图谱 在Docker中,修改已经挂载…

本地navicate连接vm虚拟机中的mysql5.7docker容器

一,配置 前提是我已经启动的mysql5.7容器 使用 docker ps -a 查看所有的容器 使用 docker exec -it c4f9 bash 进入mysql命令行,注意这个c4f9是容器唯一id,不用写全连接mysql mysql -uroot -p123456,连接成功后 输入 show datab…

蓝桥杯——123

123 二分等差数列求和前缀和数组 题目分析 连续一段的和我们想到了前缀和,但是这里的l和r的范围为1e12,明显不能用O(n)的时间复杂度去求前缀和。那么我们开始观察序列的特点,可以按照等差数列对序列进行分块。如上图,在求前10个…

当代体育科技期刊投稿邮箱

《当代体育科技》杂志是由国家新闻出版总署批准的正规体育类学术期刊,刊登国内外体育科技领域的新技术、新成果,介绍体育运动项目新的训练方法、动态和发展趋势,宣传科学技术在体育行业中的应用,促进我国体育科技事业的发展。适用…

【笔记版】docker常用指令---systemctl类、docker状态

systemctl [options] docker 启动:system start docker查看状态:systemctl status docker停止:systemctl stop docker有警告:service关闭了,但是docker.socket仍响应解决方法:systemctl stop docker.socket…

springboot2入门到实战-数据库缓存同步框架canal

canal框架 canal [kə’nl],译意为水道/管道/沟渠,主要用途是基于 MySQL 数据库增量日志解析,提供增量数据订阅和消费 早期阿里巴巴因为杭州和美国双机房部署,存在跨机房同步的业务需求,实现方式主要是基于业务 trig…

【sgCollapseBtn】自定义组件:底部折叠/展开按钮

特性&#xff1a; 支持自定义折叠状态支持自定义标签名称 sgCollapseBtn源码 <template><div :class"$options.name" click"show !show" :placement"placement"><div class"collapse-btns"><div class"c…

嵌入式中volatile关键字的使用方法

Hi,大家好&#xff01; 今天我们来学习一下volatile关键字&#xff0c;volatile关键字想必大家在平时编程中都见过或用过。可是小伙伴们有没有想过什么时候需要使用volatile关键字吗&#xff1f; 在C语言中&#xff0c;volatile是一个关键字&#xff0c;用于告诉编译器不要优化…

Java 打包 SpringBoot 项目报错

Java 打包 SpringBoot 项目报错 问题重现 Please refer to xxxx for the individual test results. Please refer to dump files (if any exist) [date].dump, [date]-jvmRun[N].dump and [date].dumpstream. 解决问题 在 pom.xml 的 <properties> 中添加项目代码 <s…

QUIC来了!

什么是QUIC QUIC&#xff0c;快速UDP网络连接(Quick UDP Internet Connection)的简称&#xff0c;即RFC文档描述它为一个面向连接的安全通用传输协议。其基于UDP协议实现了可靠传输及拥塞控制&#xff0c;简单来说&#xff0c;QUIC TCP TLS。 为什么有了QUIC HTTP2.0为了为了…

MySQL 的备份方式

MySQL 的备份方式 1. 逻辑备份 逻辑备份是指将数据库中的数据导出为可读的 SQL 语句&#xff0c;通过这些语句可以还原数据库的结构和数据。 使用 mysqldump 工具进行逻辑备份 - **命令示例&#xff1a;**mysqldump -u [username] -p [database_name] > backup_file.sql- …

Spring中的数据校验---JSR303

介绍–什么是JSR303 JSR 303是Java中的一项规范&#xff0c;用于定义在Java应用程序中执行数据校验的元数据模型和API。JSR 303的官方名称是"Bean Validation"&#xff0c;它提供了一种在Java对象级别上执行验证的方式&#xff0c;通常用于确保输入数据的完整性和准…

飞链云共创伙伴亮相温州大学,全国首个AIGC大学俱乐部成立!

在这个充满创新活力的时代&#xff0c;我们见证了一个又一个里程碑式的事件。3月3日&#xff0c;温州大学AIGC俱乐部的成立仪式盛大举行&#xff0c;这标志着全国首个AIGC大学俱乐部的诞生。更让人激动的是&#xff0c;飞链云AI共创伙伴——应流&#xff08;广州&#xff09;科…

PFA晶圆夹在半导体芯片制造中的应用

随着半导体技术的不断进步&#xff0c;晶圆制造作为集成电路产业的核心环节&#xff0c;对生产过程的精密性和洁净度要求日益提高。在众多晶圆制造工具中&#xff0c;PFA&#xff08;全氟烷氧基&#xff09;晶圆夹以其独特的材质和性能&#xff0c;在近年来逐渐受到业界的广泛关…

【Datawhale组队学习:Sora原理与技术实战】AIGC技术基础知识

AIGC是什么 AIGC全称叫做AI generated content&#xff0c;AlGC (Al-Generated Content&#xff0c;人工智能生产内容)&#xff0c;是利用AlI自动生产内容的生产方式。 在传统的内容创作领域中&#xff0c;PGC&#xff08;Professionally-generated Content&#xff0c;专业生…