网上有很多静态库打包教程,不过最好自己动手一遍
准备工作
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


三. 打包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

-
把真机和模拟器合成版的文件,替换掉真机版文件, 把.framwork拷贝出来,即可使用了
130多M
网友评论