本地环境
- macOS Monterey 12.2.1
- Xcode Version 13.2.1 (13C100)
创建项目
Use Core Data
:是否使用数据库
- 项目结构
.
├── iOSOCDemo
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── Assets.xcassets
│ │ ├── AccentColor.colorset
│ │ │ └── Contents.json
│ │ ├── AppIcon.appiconset
│ │ │ └── Contents.json
│ │ └── Contents.json
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Info.plist
│ ├── SceneDelegate.h
│ ├── SceneDelegate.m
│ ├── ViewController.h
│ ├── ViewController.m
│ └── main.m
├── iOSOCDemo.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ ├── xcshareddata
│ │ │ └── IDEWorkspaceChecks.plist
│ │ └── xcuserdata
│ │ └── baipao.xcuserdatad
│ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ └── baipao.xcuserdatad
│ └── xcschemes
│ └── xcschememanagement.plist
├── iOSOCDemoTests
│ └── iOSOCDemoTests.m
└── iOSOCDemoUITests
├── iOSOCDemoUITests.m
└── iOSOCDemoUITestsLaunchTests.m
使用CoCoaPods
管理
初始化 pod
进入项目
pod init
初始化 pod
时,会根据 projectName.xcodeproj
在根目录创建一个 Podfile
文件。
查看Podfile
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'
target 'iOSOCDemo' do
# Comment the next line if you don't want to use dynamic frameworks
use_frameworks!
# Pods for iOSOCDemo
target 'iOSOCDemoTests' do
inherit! :search_paths
# Pods for testing
end
target 'iOSOCDemoUITests' do
# Pods for testing
end
end
命令pod install
会生成一些文件如下:
├── Podfile
├── Podfile.lock
├── Pods
│ ├── Headers
│ ├── Local Podspecs
│ ├── Manifest.lock
│ ├── Pods.xcodeproj
│ │ ├── project.pbxproj
│ │ └── xcuserdata
│ │ └── baipao.xcuserdatad
│ │ └── xcschemes
│ │ ├── Pods-iOSOCDemo-iOSOCDemoUITests.xcscheme
│ │ ├── Pods-iOSOCDemo.xcscheme
│ │ ├── Pods-iOSOCDemoTests.xcscheme
│ │ └── xcschememanagement.plist
│ └── Target Support Files
│ ├── Pods-iOSOCDemo
│ │ ├── Pods-iOSOCDemo-Info.plist
│ │ ├── Pods-iOSOCDemo-acknowledgements.markdown
│ │ ├── Pods-iOSOCDemo-acknowledgements.plist
│ │ ├── Pods-iOSOCDemo-dummy.m
│ │ ├── Pods-iOSOCDemo-umbrella.h
│ │ ├── Pods-iOSOCDemo.debug.xcconfig
│ │ ├── Pods-iOSOCDemo.modulemap
│ │ └── Pods-iOSOCDemo.release.xcconfig
│ ├── Pods-iOSOCDemo-iOSOCDemoUITests
│ │ ├── Pods-iOSOCDemo-iOSOCDemoUITests-Info.plist
│ │ ├── Pods-iOSOCDemo-iOSOCDemoUITests-acknowledgements.markdown
│ │ ├── Pods-iOSOCDemo-iOSOCDemoUITests-acknowledgements.plist
│ │ ├── Pods-iOSOCDemo-iOSOCDemoUITests-dummy.m
│ │ ├── Pods-iOSOCDemo-iOSOCDemoUITests-umbrella.h
│ │ ├── Pods-iOSOCDemo-iOSOCDemoUITests.debug.xcconfig
│ │ ├── Pods-iOSOCDemo-iOSOCDemoUITests.modulemap
│ │ └── Pods-iOSOCDemo-iOSOCDemoUITests.release.xcconfig
│ └── Pods-iOSOCDemoTests
│ ├── Pods-iOSOCDemoTests-Info.plist
│ ├── Pods-iOSOCDemoTests-acknowledgements.markdown
│ ├── Pods-iOSOCDemoTests-acknowledgements.plist
│ ├── Pods-iOSOCDemoTests-dummy.m
│ ├── Pods-iOSOCDemoTests-umbrella.h
│ ├── Pods-iOSOCDemoTests.debug.xcconfig
│ ├── Pods-iOSOCDemoTests.modulemap
│ └── Pods-iOSOCDemoTests.release.xcconfig
├── iOSOCDemo
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── Assets.xcassets
│ │ ├── AccentColor.colorset
│ │ │ └── Contents.json
│ │ ├── AppIcon.appiconset
│ │ │ └── Contents.json
│ │ └── Contents.json
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Info.plist
│ ├── SceneDelegate.h
│ ├── SceneDelegate.m
│ ├── ViewController.h
│ ├── ViewController.m
│ └── main.m
├── iOSOCDemo.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ ├── xcshareddata
│ │ │ └── IDEWorkspaceChecks.plist
│ │ └── xcuserdata
│ │ └── baipao.xcuserdatad
│ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ └── baipao.xcuserdatad
│ └── xcschemes
│ └── xcschememanagement.plist
├── iOSOCDemo.xcworkspace
│ └── contents.xcworkspacedata
├── iOSOCDemoTests
│ └── iOSOCDemoTests.m
└── iOSOCDemoUITests
├── iOSOCDemoUITests.m
└── iOSOCDemoUITestsLaunchTests.m
Podfile引入第三方库
# Uncomment the next line to define a global platform for your project
# platform :ios, '9.0'
target 'iOSOCDemo' do
# Comment the next line if you don't want to use dynamic frameworks
use_frameworks!
# Pods for iOSOCDemo
pod 'Masonry'
target 'iOSOCDemoTests' do
inherit! :search_paths
# Pods for testing
end
target 'iOSOCDemoUITests' do
# Pods for testing
end
end