我是看着里面的步骤来做的,由于我自己对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-/sdk
export ANDROID_NDK=C:/android-ndk-r10e

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

2. Cygwin编译ijkplayer需要注意:

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

 
最后看到编译出来三个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
# }

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

运行效果: 
 
默认是横屏的,应为是AndroidTV的播放器。

播放效果: 

下载地址———————————↓ 
  Demo代码百度云下载 
  APK可运行下载 
  编译后封装过直接可用

Android ijkplayer在windows下编译并导入Android Studio的更多相关文章

  1. windows下编译boost for android

    env: windows xp 32 bit mingw official  NDK 1. 下载源代码    地址是 :http://sourceforge.net/projects/boost/fi ...

  2. 一步步实现windows版ijkplayer系列文章之四——windows下编译ijkplyer版ffmpeg

    一步步实现windows版ijkplayer系列文章之一--Windows10平台编译ffmpeg 4.0.2,生成ffplay 一步步实现windows版ijkplayer系列文章之二--Ijkpl ...

  3. osg for android学习之一:windows下编译(亲测通过)【转】

    1. 首先需要一个OSG for android的环境 (1)NDK 现在Eclipse 对NDK已经相当友好了,已经不需要另外cygwin的参与,具体可以参考 Android NDK开发篇(一):新 ...

  4. react-native —— 在Windows下搭建React Native Android开发环境

    在Windows下搭建React Native Android开发环境 前段时间在开发者头条收藏了 @天地之灵_邓鋆 分享的<在Windows下搭建React Native Android开发环 ...

  5. 在Windows下编译FFmpeg详细说明

    MinGW:一个可自由使用和自由发布的Windows特定头文件和使用GNC工具集导入库的集合,允许你生成本地的Windows程序而不需要第三方C运行时 MinGW,即 Minimalist GNU F ...

  6. 在Windows下编译OpenSSL(VS2005和VC6)

    需要说明的是请一定安装openssl-0.9.8a .  openssl-1.0.0我没有编译成功. 如何在Windows下编译OpenSSL (Vs2005使用Vc8的cl编译器)1.安装Activ ...

  7. [转] Windows下编译OpenSSL

    简述 OpenSSL是一个开源的第三方库,它实现了SSL(Secure SocketLayer)和TLS(Transport Layer Security)协议,被广泛企业应用所采用.对于一般的开发人 ...

  8. Windows下编译objective-C

    Windows下编译objective-C 2011-08-31 14:32 630人阅读 评论(0) 收藏 举报 windowscocoa工具objective clibraryxcode   目录 ...

  9. 如何在WINDOWS下编译BOOST C++库 .

    如何在WINDOWS下编译BOOST C++库 cheungmine 2008-6-25   写出来,怕自己以后忘记了,也为初学者参考.使用VC8.0和boost1.35.0.   1)下载boost ...

随机推荐

  1. Linux 运维笔试题(一)

    试题:   1.说出下列服务对应的端口或者端口对应的服务 21  23  25  873  161  111  110  53  123  2049   2.文件atime,ctime,mtime的区 ...

  2. echarts如何修改数据视图dataView中的样式

    原文链接:点我 做了一个现实折线图的图表,通过右上角icon可以自由切换成柱状图,表格.在表格中遇到的一点小问题,解决方案如下: 1.场景重现 这是一个显示两个折线图的图表,一切看起来都很顺利.但是点 ...

  3. js中return 、return false 、return true、break、continue区别

    在开发中不熟悉这三者区别的同学,一般都知道return可以中止,但会根据字面意思觉得return true 中止当前函数执行,但其后的函数还会继续执行.return false 中止当前函数执行,其后 ...

  4. CF718C Sasha and Array(线段树维护矩阵)

    题解 (不会矩阵加速的先去学矩阵加速) 反正我想不到线段树维护矩阵.我太菜了. 我们在线段树上维护一个区间的斐波那契的列矩阵的和. 然后询问时提取每个符合题意列矩阵的答案项(不是列矩阵存了两项吗,一个 ...

  5. Chrome发布73 beta版:增强Linux用户体验

    Google开发者周五推动Chrome 73进入他们的测试频道,因为他们准备在3月12日左右推出这款网页浏览器更新,以便稳定推出.除非另有说明,否则下面描述的更改适用于Android,Chrome O ...

  6. Python组织文件 实践:将带有美国风格日期的文件改名为欧洲风格日期

    描述:假设有这样一个任务,你需要将文件名中含有美国风格日期(MM-DD-YYYY)的部分更换为欧洲风格日期(DD-MM-YYYY),并且需要你处理的文件多达上千个 分析:检查当前工作目录的所有文件名, ...

  7. 作诗(si)[分块]

    题目描述 神犇SJY虐完HEOI之后给傻×LYD出了一题: SHY是T国的公主,平时的一大爱好是作诗. 由于时间紧迫,SHY作完诗之后还要虐OI,于是SHY找来一篇长度为N的文章,阅读M次,每次只阅读 ...

  8. iOS 实现QQ界面

    应师傅要求编写个QQ界面来不吝赐教下我的代码问题. 编写个QQ界面.有三个组,每一个组有人.并显示在线不在线. 先看一下效果图 这里省了事由于我的图片仅仅用了一张.假设要依据人的不同设置,仅仅要在ce ...

  9. leetcode第一刷_Text Justification

    这个题的接受率好低,搞得我一直不敢做.后来认真的看了一下题目,不是非常难嘛.字符串的题目ac率就是低,除了难,还由于它的測试用例太多. 思路不难,主要是由于特殊情况太多.纯模拟,我把全部的情况罗列一下 ...

  10. Redis封装值ZSet

    /// <summary> /// Sorted Sets是将 Set 中的元素增加了一个权重参数 score,使得集合中的元素能够按 score 进行有序排列 /// 1.带有权重的元素 ...