ReactNative进阶(四十三)iOS项目Xcode本地联调

文章目录

一、前言

项目组应用RN技术栈开发ios应用后,应用jenkins实现ipa组包及功能验证,过程耗时。故迫切需要实现iOS应用本地热部署,为此离开不了Xcode。作为非原生开发,特梳理此文。

开发环境如下:

  • Xcode: 14.2 (Xcode 15.2 无法真机联调)
  • react-native: 0.60.3

二、本地联调

对于通过.xcodeproj打开项目,会遇到各种依赖问题,例如Uncategorized Command CompileSwift failed with a nonzero exit codeNo such module 'SnapKit'等。官网有明确提示以下信息:

提示⚠️:react-native 0.60 版本之后的主项目文件是.xcworkspace,不是.xcodeproj

.xcworkspace.xcodeproj的区别:

.xcworkspace.xcodeproj都是与Xcode项目相关的文件,但在功能和用途上有一些区别:

  1. .xcodeproj:

    • .xcodeproj是Xcode项目文件的扩展名,实际上是一个包含项目配置、源代码文件、资源文件等的目录。
    • .xcodeproj文件通常用于单个应用程序的开发,其中包含了项目的设置、编译选项、代码文件等信息。
    • .xcodeproj文件在Xcode中被用来打开和管理特定的应用程序项目。
  2. .xcworkspace:

    • .xcworkspace是Xcode的工作空间文件,用于管理多个相关的Xcode项目。
    • .xcworkspace文件可以包含一个或多个.xcodeproj文件,允许同时打开、编辑和构建多个项目,方便项目之间的协作开发。
    • .xcworkspace还允许添加共享的框架、库以及其他依赖关系,方便统一管理多个项目的依赖关系。

总结来说,.xcodeproj是单个项目的工程文件,而.xcworkspace则是用于管理多个项目、依赖关系和共享设置的工作空间文件。通常在进行复杂的应用程序开发时,会使用.xcworkspace来组织和管理多个相关的项目。

三、拓展阅读

相关推荐
用户38034165882971 小时前
50MB 红线下的 iOS 录屏引擎:ReplayKit Broadcast Extension 实战
ios
武当王丶也1 小时前
React Native 扫码事件调度实战:用监听栈解决页面、弹窗与 Sheet 冲突
react native
光影少年5 小时前
react navite封装一个RN 通用按钮组件
前端·javascript·react native·react.js·前端框架
Privasa-隐私实验室7 小时前
跨端技术选型|Flutter搭建隐私加密App,安卓与iOS双端差异适配实战
android·笔记·安全·flutter·ios·隐私安全·aes-256
sakiko_21 小时前
OC基础语法(与Swift对比)-1
开发语言·ios·objective-c·swift
未来猫咪花21 小时前
Everything is ViewModel:让状态管理回到对象世界
android·flutter·ios
Crazy_MT1 天前
不越狱,iPhone 为什么也能安装任意 IPA?聊聊 iLoader、SideStore 和 LiveContainer 的原理
ios·开源
杉氧1 天前
页面栈与路由:React Navigation 与 Expo Router 深度实践
android·前端·react native
光影少年1 天前
react navite高频手写/实操题
前端·javascript·react native·react.js·前端框架
JoyCong19981 天前
从iPhone Ultra到ToDesk:折叠大屏时代的效率革命,硬件只是开始
大数据·运维·ios·智能手机·iphone·远程工作·远程操作