美文网首页
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