美文网首页
xcframework制作与发布

xcframework制作与发布

作者: runsuc | 来源:发表于2023-05-23 10:33 被阅读0次

    一.创建sdk项目。

    创建framewrk

    创建完成后发现程序目录中没有 products 文件夹,执行Commond+B命令后也找不到编译出来的framework文件,那编译之后的framework该怎么找呢?

    解决步骤

    1、选择 NKFramework.xcodeproj, 右键显示包内容

    2、打开project.pbxproj

    3、按照下面方式修改文件并保存

    搜索productRefGroup,将productRefGroup上面一行的mainGroup的值,复制给productRefGroup,再保存一下,Xcode就自动刷新出来了。

    创建项目后 修改设置

    1、修改最低的系统要求

    2、在Building Settings–>Mach-O Type, Swift必须为Dyanmic Library(swift 语言智能选择动态库)

    3、Build Active Architecture Only 选择NO,表示支持各种设备

    4、Dead Code Stripping, 设置为 NO

    添加代码

    1、删除创建项目时候自带的.h文件

    2、添加代码,注意方法或属性的可访问级别 open > public > internal > fileprivate > private,要想外面程序能访问,至少要设置为public级别

    3、设置 TAGETS—>Build Phases—>Headers

    生成xcframework

    模拟器和真机

    编译完成,products里面就是对应的framework包,分别是真机和模拟器架构的。

    xcodebuild -create-xcframework -framework 真机.framework -framework 模拟器.framework -output YXSDK.xcframework

    通过以上命令生成xcframework

    二.上传远端仓库

    gitee仓库

    以gitee为例,新建一个远端仓库。

    1.clone远端仓库到本地

    2.把xcframework包放在仓库本地文件夹根目录下,同时在根目录创建podspec文件

    本地仓库

    podspec文件内容示例

    Pod::Spec.new do |s|

      s.name = '名字'

      s.version = '版本'

      s.summary = '短描述'

      s.description = '长描述'

      s.homepage = '主页'

      s.authors = '作者' 

      s.source  = { :git => '仓库地址', :tag => '版本'} 

      s.platform = :ios, '9.0'

      s.vendored_frameworks = '包名+后缀'

    end

    3.提交文件到远端仓库

    (1). 将代码修改添加到暂存区:

    ```git

    git add .

    ```

    (2). 将暂存区内容提交到本地仓库:

    ```git

    git commit -m "提交的描述信息"

    ```

    (3). 将本地仓库的代码推送到远程仓库:

    ```git

    git push <remote> <branch>

    ```

    4.生成tag

    git tag -a 1.2.0 -m '描述'

    git push --tags

    5.发布到cocopods

    pod trunk push ./sdk名字.podspec --skip-import-validation --allow-warnings

    如果上传到私有仓库是

    pod repo push gitee-xiao-applepi-appleplay sdk名字.podspec --verbose --allow-warnings

    相关文章

      网友评论

          本文标题:xcframework制作与发布

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