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 code、 No 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来组织和管理多个相关的项目。

三、拓展阅读

相关推荐
茶底世界之下2 小时前
为什么高精度透明图片上传到 Metal 时,必须把“拷贝像素”与“混合合成”分开
ios
老李IT笔记2 小时前
iOS 27 更新延迟只能给 1 到 90 天:两个参数怎么配,配错了会发生什么
ios·智能手机
Helix2504 小时前
移动端浏览器内核之争:iOS 为何强制使用 WebKit?
ios·safari·webkit·wkwebview·浏览器内核·blink·ios浏览器内核
传奇开心果编程15 小时前
【SwiftUI提高练中学】第13课 实时活动与灵动岛:ActivityKit 实战
学习·ui·ios·swiftui·swift
可乐鸡翅yeah_20 小时前
M3U8 防盗链 URL‑Token 签名,新手开发实操避坑
开发语言·javascript·ios·音视频·safari
传奇开心果编程1 天前
【SwiftUI入门练中学】第17课 通知与后台任务
学习·ui·ios·swiftui·swift
yqj2341 天前
ESP32-S3中小智项目优化内容
ide·macos·xcode
ii_best2 天前
按键精灵手机端开发安卓版实战:手写一个可最小化、可拖动的「运行日志悬浮窗」(附完整 源码 + 踩坑记录)
android·ios·智能手机·自动化·ai编程·按键精灵
美狐美颜SDK开放平台2 天前
Android与iOS直播APP美颜有什么区别?视频美颜SDK开发详解
android·ios·音视频·视频美颜sdk