美文网首页
使用cocopods导入第三方库

使用cocopods导入第三方库

作者: 遇见I你 | 来源:发表于2022-05-11 17:14 被阅读0次
    1、创建Podfile文件

    a. 打开终端
    b. 输入 "cd + 项目路径",进入项目根目录
    c. 输入 "pod init",创建Podfile文件

    注:ls指令:查看当前目录下的文件

    ~ % cd /Users/smx/Desktop/TestDemo 
    ~ TestDemo % ls
    TestDemo        TestDemoTests
    TestDemo.xcodeproj    TestDemoUITests
    ~ TestDemo % pod init
    ~ TestDemo % ls
    Podfile            TestDemo.xcodeproj    TestDemoUITests
    TestDemo        TestDemoTests
    

    2、打开Podfile文件,输入要导入的第三方。(eg:pod 'AFNetworking')

    2.1 使用终端指令编辑Podfile文件

    a. 输入指令 "vim Podfile",点击回车键进入待编辑状态
    b. 点击 "i" 键,进入编辑模式
    c. 输入指令(eg:pod 'AFNetworking'),点击ESC键,退出编辑模式
    d. 英文状态下输入 :wq 保存并退出 (:w保存,:q退出,:wq保存并退出)

    2.2 直接打开文件编辑Podfile文件
    # 定义平台版本号
    platform :ios, '9.0'
    #  source 'https://cdn.cocoapods.org/'
    target 'TestDemo' do
      # Comment the next line if you don't want to use dynamic frameworks
      use_frameworks!
      pod 'AFNetworking' 
    end
    

    3、执行pod install安装第三方

    终端输入 pod install,回车执行

    ~ TestDemo % pod install
    Analyzing dependencies
    Downloading dependencies
    Installing AFNetworking (4.0.1)
    Generating Pods project
    Integrating client project
    
    [!] Please close any current Xcode sessions and use `TestDemo.xcworkspace` for this project from now on.
    Pod installation complete! There is 1 dependency from the Podfile and 1 total pod installed.
    

    4、拓展

    pod install  // 一般是第一次想要为项目添加pod的时候使用的
    pod install --verbose --no-repo-update // 会在安装相关库时,更新其它库版本。推荐使用
    pod update 库名 --verbose --no-repo-update // 该指令只更新指定的库,其它库忽略
    

    5、常用第三方库

    platform :ios, ‘9.0’
    source 'https://cdn.cocoapods.org/'  #可不添加
    
    # 忽略引入库的所有警告(强迫症者的福音啊)
    inhibit_all_warnings!
    # 多个target共用一套pod的写法,项目中不能存在名字为xueanpods,防止冲突
    abstract_target 'targetsName' do
        # 共用的第三方
        pod 'AFNetworking'                  # 网络请求
        pod 'Masonry'                       # UI布局
        pod 'SVProgressHUD'                 # HUD提示框
        pod 'IQKeyboardManager'             # 键盘处理
        pod 'MJRefresh'                     # 列表刷新
        pod 'MJExtension'                   # 数据转模型
        pod 'YYText'                        # 富文本
        pod 'YYCache'                       # 数据缓存
        pod 'YYCategories'                  # 分类
        pod 'YYModel'                       # 模型转换
        pod 'HBDNavigationBar'              # 导航栏
        pod 'TYCyclePagerView'              # 轮播Bnner
        pod 'JXCategoryView'                # 分栏页面
        pod 'JXPagingView/Pager'            # 同上,扩展
        pod 'JJException'                   # 异常捕获
        pod 'FSCalendar'                    # 日历插件
        pod 'SAMKeychain'                   # 钥匙串存取
        pod 'MGJRouter'                     # 组件化
        pod 'SDWebImage'                    # 网络图片加载
        pod 'NullSafe'
        pod 'lottie-ios', '2.5.3'           # Lottie动画,2.5.3之后是Swift的版本
        pod 'DZNEmptyDataSet'               # 空列表占位
        pod 'LSAnimator'                    # 动画
        pod 'ReactiveObjC'                  # 响应式编程
        pod 'TZImagePickerController'       # 图片选择
        pod 'TOCropViewController'          # 图片裁剪
        pod 'CGXPickerView'                 # 日期选择
        pod 'XHLaunchAd'                    # 开屏广告  
        pod 'HXPhotoPicker'     # 推荐,图片选择工具,可编辑裁剪,预览本地图片,九宫格插件等等功能丰富
        pod 'GKPhotoBrowser'   # 本地图片预览   
        #pod 'CocoaAsyncSocket'              #套接字(UDP,UCP)
        #pod 'BabyBluetooth'                 #蓝牙库
        #pod 'GVUserDefaults'                # 偏好设置
        #pod 'Popover.OC'                    # 一款优雅易用的类似QQ和微信消息页面的右上角微型菜单弹窗
        #pod 'PPCounter'                     # UIlabel动画
        #pod 'SGQRCode'                      # 二维码生成和识别
        #pod 'FSCalendar'                    # 日历插件
        #pod 'ZZCircleProgress'              # 圆形进度条
        #pod 'UICountingLabel'               # UIlabel动画
        #pod 'Bugly'                         # 异常统计
        #pod 'SAMKeychain'                   # 钥匙串存取
        #pod 'MGJRouter'                     # 组件化
        #pod 'LSAnimator'                    # 连续动画流程简化
        #pod 'Wonderful'                     # 颜色库
        #pod 'SDCycleScrollView'             # 轮播库
        #pod 'CYLTabBarController'           # 导航库
        #pod 'UICKeyChainStore'              # 钥匙串存取
        #pod 'UINavigation-SXFixSpace'       # 导航栏Item边距
        #pod 'FLEX'                          # 调试工具
        #pod 'FMDB'                        # 数据库FMDB工具
        #pod 'Texture'                       # facebook 原AsyncDisplayKit
        #pod 'BMKLocationKit'                # 百度定位
        #pod 'YGSocialSDK'                   # 社会化分享
        #pod 'WechatOpenSDK'                 # 微信SDK
        #pod 'Weibo_SDK'                     # 微博SDK
        #pod 'AliyunOSSiOS'                           # 阿里云存储
        #pod 'JPush'                                  # 极光APNS
        #pod 'UMCommon'                               # 友盟SDK基础库
        #pod 'UMDevice'                               # 友盟用于设备性能统计的工具
        #pod 'UMAPM'                                  # 友盟用于App性能统计的库
        #pod 'UMShare/Social/WeChat'                  # 微信
        #pod 'UMShare/Social/WeChatWork'              # 企业微信
        #pod 'UMShare/Social/QQ'                      # 集成QQ/QZone/TIM
        #pod 'UMShare/Social/Sina'                    # 新浪微博
        #pod 'UMShare/Social/AlipayShare'             # 支付宝
    
        #新版shareSDK - QQ、微信、微博分享
    #    pod 'mob_sharesdk'
    #    pod 'mob_sharesdk/ShareSDKPlatforms/QQ'
    #    pod 'mob_sharesdk/ShareSDKPlatforms/SinaWeibo'
    #    pod 'mob_sharesdk/ShareSDKPlatforms/WeChat'
    #    pod 'mob_sharesdk/ShareSDKUI'
    #    pod 'mob_sharesdk/ShareSDKExtension'
    #    pod 'mob_sharesdk/ShareSDKConfigFile'
    
        target 'target_1' do
              # 单独添加该Target单独使用的开源框架
        end
        
        target 'target_2' do
              # 单独添加该Target单独使用的开源框架
        end
    end
    
    # 统一修改 IPHONEOS_DEPLOYMENT_TARGET 版本号为 9.0
    #post_install do |installer|
    #  installer.pods_project.targets.each do |target|
    #    flutter_additional_ios_build_settings(target)
    #    target.build_configurations.each do |config|
    #      config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '9.0'
    #    end
    #  end
    #end
    
    # pod更新需注意 只能单个单个库更新 全部更新可能引起冲突
    #pod update 库名  --verbose --no-repo-update
    
    

    相关文章

      网友评论

          本文标题:使用cocopods导入第三方库

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