Apple基础(Xcode①-项目结构解析)

要运行设备之前先选择好设备

Product---->Destination---->选择设备

首次运行手机提示

如出现 "未受信任的企业级开发者"
→ 手机打开 设置 ▸ 通用 ▸ VPN与设备管理 → 信任你的 Apple ID 即可

ContentViewSwiftUI 项目最顶层、最主界面 的那个"页面",相当于:

  • Flutter 的 MyApp()MaterialApp(home: ...)

  • Android 的 MainActivity

  • Web 的 index.html

✅ 一句话理解:

ContentView 就是你 App 打开后第一眼看到的界面。

🏗️ 它长什么样?

新建 SwiftUI 项目时,Xcode 会自动生成下面这个文件:

Swift 复制代码
// ContentView.swift
import SwiftUI

struct ContentView: View {
    var body: some View {
        VStack {
            Image(systemName: "globe")
                .imageScale(.large)
                .foregroundStyle(.tint)
            Text("Hello, world!")
        }
        .padding()
    }
}
  • struct ContentView: View → 声明这是一个视图(界面)

  • body → 描述界面的内容(文字、图片、按钮等)。

  • 默认显示一个地球图标 + "Hello, world!" 文字。

🧩 它在哪被用到?

YourAppNameApp.swift 里:

Swift 复制代码
@main
struct MyFirstApp: App {
    var body: some Scene {
        WindowGroup {
            ContentView()   // ← 这里决定启动时显示谁
        }
    }
}

🛠️ 想改界面?

直接改 ContentView.swift 里的 body 就行。比如:

Swift 复制代码
Text("Hello, world!")
    .font(.largeTitle)
    .foregroundColor(.red)

保存后按 ⌘R 跑真机,手机界面立即更新。


✅ 总结一句话:

ContentView 就是 SwiftUI App 的"首页",你所有界面都从它开始。

Info.plist 是 iOS App 的"身份证+使用说明书",告诉系统"我是谁、能干嘛、需要什么权限"。

  1. 在 Xcode 左侧导航栏找到 Info.plist → 双击即可图形化编辑

  2. 或在 Flutter 项目:ios/Runner/Info.plist 用 VS Code / Xcode 改都行

  3. 改完 ⌘S 保存 → ⌘R 重新跑真机即刻生效

类别 举例字段 作用
身份识别 CFBundleIdentifier(Bundle ID) App 的唯一包名,如 com.mycompany.myapp
展示信息 CFBundleDisplayName 桌面图标下方的名字
版本号 CFBundleShortVersionString App Store 向用户显示的版本(如 1.2.3)
权限弹窗文案 NSCameraUsageDescription 首次调用相机时,系统弹出的提示文字
系统能力开关 UIRequiredDeviceCapabilities 声明必须支持的功能(如需要陀螺仪、ARKit 等)

🛠️ 常见场景示例

想改 App 名称

Swift 复制代码
<key>CFBundleDisplayName</key>
<string>新名字</string>

想访问相机必须加

Swift 复制代码
<key>NSCameraUsageDescription</key>
<string>拍照用于头像上传</string>

Flutter 项目网络白名单

Swift 复制代码
<key>NSAppTransportSecurity</key>
<dict>
  <key>NSAllowsArbitraryLoads</key><true/>
</dict>

123

相关推荐
tedcloud12316 小时前
Wand-Enhancer:如何搭建一套远程开发与测试环境
前端·人工智能·macos·开源·流程图
A133455519 小时前
Windows/Mac/电脑播放器推荐:全平台怎么选
macos·电脑
云边有个稻草人20 小时前
飞牛 NAS 远程访问实战:星空组网连接 Mac 与安卓,从 Compose 部署到 5G 验证
android·5g·macos
for_ever_love__20 小时前
iOS: GCD高级API
macos·ios·objective-c·cocoa·多线程·gcd
2501_9159184120 小时前
在Windows10上使用VSCode和Code Runner搭建Swift开发环境详细步骤
ide·vscode·ios·objective-c·个人开发·swift·敏捷流程
墨白曦煜21 小时前
穿透 IDE 的障眼法:Git 四大工作区与核心数据流转解析
ide·git
suliqiang1 天前
【前端技术】 Web 前端技术36年 演进全景图
信息可视化·微信小程序·小程序·前端框架·uni-app·人机交互·xcode
深念Y1 天前
黑苹果P400-卡顿排查与优化记录
linux·macos·ios·pve·黑苹果·英伟达·n卡
for_ever_love__1 天前
iOS: GCD入门
ios·cocoa·xcode
钱栈up2 天前
Mac端一键部署服务端项目:从流程梳理到踩坑适配的完整实践
macos