一、首先配置NDK
下载地址:http://wear.techbrood.com/tools/sdk/ndk/
打开终端
1、输入 pico .bash_profile
或者
touch ~/.bash_profile
这个bash_profile其实就是配置文件,这里如果原先不存在这个文件的话就创建一个,原先有了的话不影响。
open ~/.bash_profile
2、export ANDROID_NDK=NDK路径
或者export PATH=$PATH:NDK路径
export ANDROID_NDK=NDK路径
保存( control+X) 选 Y
3、source .bash_profile 更新
4、检查是否配置成功
ndk-build
输出Could not find application project directory ! Android NDK: Please define the NDK_PROJECT_PATH variable to point to it. /Users/Kelvin/Downloads/android-ndk-r10e/build/core/build-local.mk:143: *** Android NDK: Aborting . Stop即为成功
二、编译
Android: Gradle # required allprojects { repositories { jcenter() } } dependencies { # required, enough for most devices. compile 'tv.danmaku.ijk.media:ijkplayer-java:0.6.2' compile 'tv.danmaku.ijk.media:ijkplayer-armv7a:0.6.2' # Other ABIs: optional compile 'tv.danmaku.ijk.media:ijkplayer-armv5:0.6.2' compile 'tv.danmaku.ijk.media:ijkplayer-arm64:0.6.2' compile 'tv.danmaku.ijk.media:ijkplayer-x86:0.6.2' compile 'tv.danmaku.ijk.media:ijkplayer-x86_64:0.6.2' # ExoPlayer as IMediaPlayer: optional, experimental compile 'tv.danmaku.ijk.media:ijkplayer-exo:0.6.2' }如果正确编译的话,会分别在ijkplayer-arm64、ijkplayer-armv5、ijkplayer-armv7a、ijkplayer-x86、ijkplayer-x86_64这些项目的src/main/libs/对应的名称 目录下分别生成libijkffmpeg.so、libijkplayer.so、libijksdl.so这三个so文件。
ijkplayer-arm64,ijkplayer-armv5,ijkplayer-armv7a,ijkplayer-x86,ijkplayer-x86_64是不同体系架构的动态链接库,在当前工程结构里面作为一个模块,如果不想做兼容多平台问题,可以删除其他目录结构,单独保留自己需要的平台目录。
使用时直接将编译好的so库导入工程即可。