iOS学习

作者: hjm1fb | 来源:发表于2020-04-02 19:23 被阅读0次
  • Objective-C 相关

Objective-C 简介
Objective-C 入门教程(看完"属性"了)
Objective-C Wiki
iOS Category 详解
Objective-C Category

  • API用法
    给Canvas着色:
    CGContextSetFillColorWithColor(context, [[UIColor whiteColor] colorWithAlphaComponent:0.3].CGColor);
    CGContextFillRect(context, CGRectMake(0, 0, width, height));
    CGContextDrawImage(context, CGRectMake(0, 0, width, height), cgImageRef);

  • Xcode更新运行iOS项目(如AE项目)的一般步骤:

  • 如果增加了新的SubModule,需要执行SubModule更新命令:
    git pull --recurse-submodules origin release_xxx.
    然后在Fork等Git版本控制软件里,点击进入SubModule界面, 以初始化此SubModule)

  • 如果提示"RuntimeError - [Xcodeproj] Unknown object version": 解决报错“RuntimeError - [Xcodeproj] Unknown object version.”

  • 如果subModule提示“Couldn't load project”: 尝试直接双击此project的xx.xcworkspace文件,看看是不是提示Xcode版本过低

  • 如果include的文件,在电脑内也找不到,也就是代码没有拉下来,就也要看看subModule的仓库有没有开权限

  1. 打开命令行界面,进入项目根目录 cd /Users/xx/DemoiOS
  2. 执行 pod install
  3. 如果提示错误,按提示执行命令: pod install --repo-update
  4. 上一步更新完毕后,
  5. 用Xcode打开根目录的此文件: /Users/xx/DemoiOS/DemoiOS.xcworkspace
  6. 在preference里的locations选项里,前两个选项都选Default,Advanced里选择Shared Folder Build
  7. 如果Build报错:"Build input files cannot be found: ",则点击左上角的文件夹icon, 然后在左下角的搜索框内搜索对应的类,并删除对应的类
  8. 在左上角选好要运行的设备, 如果选择模拟器会导致报错
  9. 在preference里的locations选项里,前两个选项都选Default
  10. 如果弹出sign密码框,填入手机的解锁密码,并点击始终允许,不然会一直弹框
  11. 注意在run按钮的左侧,选择所要跑的项目,如Demo或者SDK
  12. 在新手机上跑项目时要设置信任选项: 位置是设置->通用->描述文件与设备管理->开发者APP
  13. 由于AE项目有自己的Build路径,所以打开AE项目时,可以去File-> Project Settings -> Advanced -> Custom 选择Absolute类型,然后选择/Applications/Adobe After Effects 2021/Plug-ins
  14. Xcode项目点击Run后,要自动启动某应用,比如AE, 则需做如下配置:点击Run按钮左边的项目名 -> 选择EditScheme -> 选中Run下面的子按钮Run, 在右侧的Info菜单栏的Executable一栏下选择所要启动的应用,如Adobe After Effects 2021

Xcode工程添加文件:
xcode的项目里新文件是需要手动添加,需要先把对应的新文件剪切到桌面,然后拖到Xcode项目工程文件树里对应的位置并如截图所示勾选选项:


截屏2022-02-24 下午5.30.05.png

bug解决:

  • 项目里引用了动态库,报错“dyld: Library not loaded: xxx.dylib”
  1. 项目设置里,Framworks and Libraries一栏,增加动态库,并且设置为Embed Without Signing;
  2. Build Phases 的 Embed Libraries里,设置Destination 为 Frameworks;
  3. Runpath Search Paths里,增加新目录: @executable_path/../Frameworks
  4. 由于不是系统库,所以在Build Phase -> Link Binary With Libraries 里设置此库的status为Optional
    这样,最后打包的文件里,会包含"根目录/Frameworks/xxx.dylib”这个文件,
    而Unix可执行文件(即@executable_path)在启动的时候会从相对路径../Frameworks去找这个xxx.dylib。
    确认最后打包的文件里的路径结构
    的确如此,就可确认dylib的路径设置正确了

相关文章

网友评论

      本文标题:iOS学习

      本文链接:https://www.haomeiwen.com/subject/tzrfphtx.html