配合着问题集锦一起配置:配置IjkPlayer遇到的问题集锦
1. 首先去ijkplayer官网将源码克隆下来。
下载后的文件目录
2. 先将项目按照自己的Android Studio配置
build.gradle:
classpath 'com.android.tools.build:gradle:3.0.0'
ext {
compileSdkVersion = 26
buildToolsVersion = "26.0.2"
targetSdkVersion = 26
versionCode = 800800
versionName = "0.8.8"
}
ijkplayer-example: build.gradle
由于本人只想在模拟器上运行,于是只依赖x86.其他都注释掉了,(用真机运行用armv7a)
settings.gradle:移除不要的插件
gradle-wrapper.properties
distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
可能会遇到问题集锦中的1-3的问题
3. 现在Android可以运行了,但是还没法播放音视频,因为ijkplayer的核心层是用的c/c++开发的,所以我们要编译ijkplayer生成so文件。
打开项目根目录的README.md文件------参考其中的Build Android。
先配置下编译用的ndk,注意:ijkplayer仅支持r10e以上r14b及以下的NDK版本
本人选择android-ndk-r12b:下载地址
// 进入项目根目录
// 如果直接git clone https://github.com/bilibili/ijkplayer.git的话,cd ijkplayer
1. cd ijkplayer-android
2. git checkout -B latest k0.8.8
3。 ./init-android.sh
4。 cd android/contrib
5。 ./compile-ffmpeg.sh clean
// 注意:ijkplayer仅支持r10e以上r14b及以下的NDK版本。
6。 ./compile-ffmpeg.sh all
7。 cd ..
8。 ./compile-ijk.sh x86 //这里我只需要x86的,需要全部的执行: ./compile-ijk.sh all
执行完上面的命令就可以ijkplayer-x86/src/main/libs/下面找到相应的so文件了,到这里整个ijkplayer 就可以播放视频了
4. 由于ijkplayer是使用ffmpeg的核心在native层,想要学习,少不了需要调试native层。下面将继续配置如何调试native层的ijkplayer
需要:
LLDB:
NDK: r12b
Android SDK Build-tools : 26.0.2
Cmake:3.6.4111459
a. 选择 File-->Sync Project with Gradle Files
b. Run -> Edit Configurations -> Debugger -> Symbol Directories
c. ijkplayer-x86 :build.gradle中添加
ok,ijkplayer 的配置终于完成了。
当然上面的方法是将ijkplayer生成动态库,如果想用静态库,就需要接着配置了
运行 在项目根目录/android下 运行 sh patch-debugging-with-lldb.sh reverse x86(你需要的)
然后参照下面文章配置:ijkplayer 静态库配置