美文网首页
iOS 打包静态库(以ijkplayer为例)

iOS 打包静态库(以ijkplayer为例)

作者: YannChee | 来源:发表于2018-01-17 12:17 被阅读43次

    网上有很多静态库打包教程,不过最好自己动手一遍

    准备工作

    https://github.com/Bilibili/ijkplayer ,这个库目前star17K+

    1.下载ffmpeg

    打开终端, cd 到jkplayer-master文件夹,执行init-ios.sh脚本

    cd 文件路径..../ijkplayer-master
    ./init-ios.sh

    ps: .表示当前目录 ..表示当前的上一级目录
    / 表示的是目录级别的分隔符, /之前的就是目录名
    ./表示当前目录时/可以省略,但是日常为了避免混乱一般 b不省略:
    ./名称/ 表示当前目录下的一个子目录;
    ./名称 表示当前目录下的一个文件


    2.编译 ffmpeg :

    进入ios 文件夹, 执行./compile-ffmpeg.sh clean和./compile-ffmpeg.sh all 命令,

    cd ios
    ./compile-ffmpeg.sh clean
    ./compile-ffmpeg.sh all

    image.png

    三. 打包IJKMediaFramework.framework框架

    1.打开工程IJKMediaPlayer.xcodeproj


    打开后,选择这个工程



    工程打开后设置工程的 scheme


    3.设置好 scheme 后, 分别选择真机和模拟器进行编译



    4.进入产品目录:



    进入 Finder 后, 可以看到有真机和模拟器两个版本


    5.合并真机和模拟器版本的 framework



    命令格式

    lipo -create "真机版本路径/文件名" "模拟器版本路径/文件名" -output "合并后的文件路径/文件名"
    
    例如
    lipo -create 
    /Users/yannchee/Library/Developer/Xcode/DerivedData/IJKMediaPlayer-cjmwsnhqlgsvhrcewpbdcossbwnb/Build/Products/Release-iphoneos/IJKMediaFramework.framework/IJKMediaFramework   /Users/yannchee/Library/Developer/Xcode/DerivedData/IJKMediaPlayer-cjmwsnhqlgsvhrcewpbdcossbwnb/Build/Products/Release-iphonesimulator/IJKMediaFramework.framework/IJKMediaFramework  
    -output 
    /Users/yannchee/Library/Developer/Xcode/DerivedData/IJKMediaPlayer-cjmwsnhqlgsvhrcewpbdcossbwnb/Build/Products/IJKMediaFramework
    
    1. 把真机和模拟器合成版的文件,替换掉真机版文件, 把.framwork拷贝出来,即可使用了




      130多M

    相关文章

      网友评论

          本文标题:iOS 打包静态库(以ijkplayer为例)

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