Cocoapods 插件cocoapods-packager

https://github.com/CocoaPods/cocoapods-packager

主要解决问题

  1. 通过podspec打包出.a或者.framework,提供给不使用cocoapods或者不方便暴露源码的场景
  2. 解决通过不同的方式添加相同的第三方导致的冲突

使用

参考文档

    pod package --help

    pod package NAME [SOURCE]

    // 参数说明
    --force
        输出结果强制覆盖原有结果
    
    --library 
        默认输出结果为framework,可以使用--library指定输出为.a
    
    --no-mangle 
        对于podspec中通过spec.dependency 'XXXXX'指定的依赖,默认会添加类名前缀。
        通过--no-mangle,可以指定不添加类名前缀。
        
        添加前缀和不添加前缀的区别:
        
        // 添加前缀
        NSLog(@"%s",object_getClassName([AFNetworkReachabilityManager sharedManager]));

        PodXXXXX_AFNetworkReachabilityManager
    
        // 不添加前缀
        NSLog(@"%s",object_getClassName([AFNetworkReachabilityManager sharedManager]));

        AFNetworkReachabilityManager
        
    --embedded
        生成Embedded Framework,iOS 8后开发者可以创建动态库,但是这个动态库和系统存在区别,
        必须嵌入到程序中,因为称之为Embedded Framework。


你可能感兴趣的:(Cocoapods 插件cocoapods-packager)