关于项目不能用CocoaPods解决方案

  • 主页:Carthage
  • 目标:Carthage旨在使用最简单的方式来管理Cocoa等第三方框架。
  • 原理:自动将第三方框架编译为动态库(Dynamic framework)。
  • 优点:Carthage为用户管理第三方框架和依赖,但不会自动修改项目文件或构建设置,开发者可以完全控制项目结构和设置 ,Carthage则更灵活且对项目没有侵入性。。

注意点: Carthage是使用最新版本swift编写,如果Xcode版本过低,要升级为最新版本

其它依赖库oc库可以直接拖到项目中 Socket.IO-Client-Swift 是swift库,需使用Carthage导入

  • 1、安装Homebrew,在终端运行:

  • 2、安装Carthage,在终端运行:

    • brew update,等待运行结束后,
    • 接着运行:
      • brew install carthage,
      • 这样Carthage就安装完成了。
  • 3、Carthage的使用

    • 1、新建一个iOS工程 provisioning profile

    • 2、使用Carthage安装Socket.IO-Client-Swift库

    • 3、先进入到项目所在的文件夹 $ cd ~/Path/CartHageDemo
    • 4、创建一个空的Cartfile文件(两种方式)

      • (1)使用终端创建: touch Cartfile
      • (2)使用文本文件创建: 创建一个名为Cartfile的文件,并保存到项目目录下
    • 5、编辑Cartfile文件

      • github "socketio/socket.io-client-swift" ~> 15.1.0
    • 6、保存并关闭Cartfile文件,使用Carthage安装框架 carthage update

到此为止,socketio/socket.io-client-swift 就已经安装到项目中了

provisioning profile

配置项目

  • 1、打开项目,点击Target -> General -> Link Library with Libraries选择Carthage/Build目录中导入的framework

provisioning profile

  • 2、添加编译脚本 点击Target -> Build Phases -> “+” -> New Run Script Phase provisioning profile

  • 3、 展开Run Script,

    • 1、在shell下面输入:

      • /usr/local/bin/Carthage copy-frameworks
    • 2、在Input Files中加入:

      • $(SRCROOT)/Carthage/Build/iOS/SocketIO.framework
      • $(SRCROOT)/Carthage/Build/iOS/Starscream.framework
    • 3、在Output Files中加入

      • $(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/SocketIO.framework
      • $(BUILT_PRODUCTS_DIR)/$(FRAMEWORKS_FOLDER_PATH)/Starscream.framework

      provisioning profile

[Demo传送门] (http://static-1.talk-fun.com/docs/ios/files/使用Carthage手动导入的SDK.zip)

Copyright Talkfun all right reserved,powered by Gitbook修订时间: 2020-05-13 15:42:51

results matching ""

    No results matching ""