windows编译 android so,ijkplayer在windows下编译并导入Android Studio

?? 阅读本文章前请先看:windows下用cygwin编译android版ijkplayer ??我是看着里面的步骤来做的,由于我自己对linux环境和命令不熟悉,导致我对Cygwin的知识为零,在编译ijkplayer的时候走了一点弯路,需要的同学先去看一下上面的这篇文章,我这边是对上面文

??阅读本文章前请先看:windows下用cygwin编译android版ijkplayer

??我是看着里面的步骤来做的,由于我自己对linux环境和命令不熟悉,导致我对Cygwin的知识为零,在编译ijkplayer的时候走了一点弯路,需要的同学先去看一下上面的这篇文章,我这边是对上面文章做补充和详细描述,下面就是需要注意的几个点:

1. Cygwin在windows下安装需要注意:

??安装Cygwin时选择安装包的时候一定要选上make包,不然我们的编译无法通过,至于文章中提到的git,ysam,其中git大家都知道,至于ysam是什么我没搜到。 make包的安装请参考:cygwin安装GNU make

?? 还有一点需要说明的就是在cygwin的home目录下,修改 ~/.bash_profile 或 ~/.profile文件,添加你的ANDROID_SDK和ANDROID_NDK的路径,我的路径如下:

export ANDROID_SDK=E:/adt-bundle-windows-x86_64-20131030/sdk

export ANDROID_NDK=C:/android-ndk-r10e

这个路径一定不能错了,错了也是无法编译的。

2. Cygwin编译ijkplayer需要注意:

?? 为自己匮乏的linux知识感到愧疚,开始我所有的编译命令都是在dos窗口下进行的,现在想想真的是醉了,我还奇怪了,为啥无法识别rm 和 ln 命令。我们在安装的cygwin目录中双击Cygwin.bat文件或者是桌面你创建的快捷图标就可以启动Cygwin了。

6eb1a1dca471dd4af59fdd18ae9491df.png

要是你的home目录下的路径配置有问题的话会在打开Cygwin窗口的最上面两行提示你。

??配置完成后就按照大神的文章的步骤来进行,在执行?./compile-ffmpeg.sh armv7a?命令的时候界面会停止一段时间,大概十分钟的样子(不知道是不是我的电脑配置不行),这句应该是在配置ffmpeg的编译环境,我当时以为是卡死了就退出来了,可想而知编译失败了,第二次等了十分钟才好的,提醒在界面不动的时候小伙伴们不要强制退出来了。

3. 解决只能编译一个libijkffmpeg.so文件需要注意:

?? 将ijkmedia和ijkprof的makefile文件写在F:\ijkplayer\android\ijkplayer\player-armv7a\src\main\jni\Android.mk

文件的最后,用include包含进来,开始我使用的是相对路径,试了好几次还是只可以编译出一个so文件,后来我改成了绝对路径才好的,要是小伙伴们也遇到了那就试试绝对路径吧:

include G:/ijkplayer/ijkmedia/*.mk

include G:/ijkplayer/ijkprof/android-ndk-profiler-dummy/jni/*.mk

下面是我编译出来的文件

8bd4c3ab217f6ba4084d1784a2a839c9.png

最后看到编译出来三个so文件是不是快递终于到了的感觉。

??我的整个工程我会上传,大家可以对照着看看。整个工程打包后有一个多G,无法上传到CSDN,只能百度云了,地址:Demo百度云下载

4. ijkplayer工程导入Android Studio需要注意:

导入没有啥注意的,按照官方给出的步骤就可以了,当然前提是你的编译没有问题才可以运行起来:

# 导入Eclipse:

# File -> New -> Project -> Android Project from Existing Code

# Select android/ and import all project

#

# 导入Android Studio:

# Open an existing Android Studio project

# Select android/ijkplayer/ and import

#

# define ext block in your root build.gradle

# ext {

# compileSdkVersion = 22 // depending on your sdk version

# buildToolsVersion = "22.0.1" // depending on your build tools version

# }

我导入后没有提示错误,也可以在手机上运行:

2d0f50e515a1da6fd10dde95769db8af.png

运行效果:

0130ce2723acba1f6dcae6ab1e31826f.png

默认是横屏的,应为是AndroidTV的播放器。

播放效果:

52f40e745364d8cd301c436a5f7b5e58.png

??Demo代码百度云下载

??APK可运行下载

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值