1. 项目初始环境
(1)Xcode9.3集成Charts 3.0.2版本;
(2)项目中已存在Charts库,是以手动集成的方式加入项目的。
2. 删除原有的Charts文件
(1)右键Charts.xcodeproj -> 点击 Show In Finder
3. 使用pod集成Charts
(1)查看pod支持的Charts版本
1. 执行命令: pod search Charts
(2)编辑podfile文件
1. 打开终端
2. 切换到项目文件目录下
cd 项目路径 (直接拖文件)
3. 创建podfile文件
执行命令: touch podfile
4. 进入编辑模式
执行命令: vim podfile -> 点击“i”键
5. 输入
platform :ios, '8.0'
use_frameworks!
target '项目target名称' do
pod 'Charts', '3.0.2'
end
6. 退出编辑模式
点击“esc”键 -> 输入“:wq”退出
(3)导入Charts
1. 执行命令:pod install
- 编译项目报错
Error:The “Swift Language Version” (SWIFT_VERSION) build setting must be set to a supported value for targets which use Swift. This setting can be set in the build settings editor.
这是 Cocoapods 管理的第三方框架版本使用的Swift版本与XCode支持的版本不一致造成的。
解决方法: 选择Pods -> Targets -> Charts -> Swift Compiler - Language -> Swift Language Version -> Swift x.x。即把 Unspecified 改成最新的Swift版本即可。
-
创建桥接文件
桥接文件 “项目名-Bridging-Header.h ”中,引用Charts的Swift头文件。
注意:如果使用“@import Charts;”会报错
Use of '@import' when C++ modules are disabled, consider using -fmodules and -fcxx- modules
6.编译报错,错误和步骤4一样。因此解决方法相同,只是修改路径变为
Targets -> Build Setting -> Swift Compiler - Language -> Swift Language Version -> Swift x.x。
- 删除创建桥接文件时生成的.swift文件
- 将桥接文件导入pch文件或要使用Charts的文件中使用即可。
7月9日更新
在更新iPad项目的时候遇到的问题:
1.错误描述
Apple Mach-O Linker Error
clang: error: linker command failed with exit code 1 (use -v to see invocation)
解决方法:
1.查看Build Settings- Other Linker Flags 中是否有一些已经被移除、重复添加的Framework ,确保移除的被移除,添加的只保留一份。
2.在 Build Phases - Link Binary With Libraries 中查看Framework,将白色图标的库移除掉。
2.错误描述
module file was created by an older version of the compiler; rebuild 'Charts
解决办法:
项目中原先用的是旧版本的Charts,更新完成后使用Git来回切换过分支,导致项目目录下的Framework文件夹下存在旧版的Charts库,Pods中是新版Charts,删除旧版即可。
3.错误描述
dyld`__abort_with_payload
断点定位在:
dyld`__abort_with_payload:
控制台的错误信息:
有时,控制台不打印上面的信息
解决办法:
1.确保XCode版本和Charts库的版本相对应;如果XCode版本高于Charts库的版本,建议更新Charts库。
2.尝试删除Charts库重新导入。