Eclipse 集成ijkplayer demo

Android 多媒体 专栏收录该内容
12 篇文章 1 订阅

接着上一篇在Mac上编译ijkplayer的.so,现在将这些文件夹拷贝到windows上。(在mac和winds上集成到eclipse上是一样的,只是我这mac上没有安装eclipse)。


现在开始说集成到Eclipse的步骤:

1 更改目录结构

  1. ijkplayer-armv7a文件夹为例,删除选中的这四个文件。
  2. 将ijkplayer-armv7a\src\main目录下的所有文件拷贝到ijkplayer-armv7a目录下。
  3. 删除src文件夹。
  4. 将java文件夹名更改为src。

其他工程也是这样操作。

2 导入各工程到eclipse中。

这里没有导入ijkplayer-exo该工程,这个是google的一个开源播放器,我这里不用所以就没有导入,如果需要用的话还需要编译ijkplayer-exo。

导入工程发现几个问题如下图所示:


这问题是因为找不到‘java’文件夹,之前将该文件夹改为src了,所有找不到很正常。

打开各个工程下的.classpath文件,删除<classpathentry kind="src" path="java"/>这一行。

然后在eclipse下刷新(refresh)下各工程就可以了。

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
	<classpathentry kind="con" path="com.android.ide.eclipse.adt.ANDROID_FRAMEWORK"/>
	<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.LIBRARIES"/>
	<classpathentry exported="true" kind="con" path="com.android.ide.eclipse.adt.DEPENDENCIES"/>
	<classpathentry kind="src" path="java"/>
	<classpathentry kind="src" path="src"/>
	<classpathentry kind="src" path="gen"/>
	<classpathentry kind="output" path="bin/classes"/>
</classpath>

3 编译各个工程

(1)首先编译ijkplayer-arm64、ijkplayer-armv5、ijkplayer-armv7a、ijkplayer-x86、ijkplayer-x86_64这五个工程,这五个工程类似.

以arm64为例,右击工程,点击Properties,选择Android,勾选Is Library点击ok. 编译下工程(Build Project),确保没有问题。

(2)编译ijkplayer-java。

出现如下图问题:

AndroidMediaPlayer类中导入的MediaDataSource类找不到,已经导入包名了,import android.media.MediaDataSource;

发现这个类是在Android 6.0(API 23)才有的一个类,将project.properties中target修改为android-23(之前我这里是22)。

重新build project,发现没有问题了。


4 编译ijkplayer-example工程

1 右击ijkplayer-example,点击Properties,选择Andorid,将这几个全部删除。


添加下图几个


2 配置preference

需要导入preference包,和导入appcompat包类似。
否则会提示该错误Error: No resource found that matches the given name: attr 'preferenceTheme'。并且该preference需要做如下配置,否则运行是setting界面打开失败。



3 配置otto

下载otto jar包,在ijkplayer-example目录下新建libs文件夹,将jar包拷贝到libs目录下。右击jar包,点击Build path,点击Add to build path。


4 修改IjkVideoView类,注释掉exoplayer相关代码。

import tv.danmaku.ijk.media.exo.IjkExoMediaPlayer;

IjkExoMediaPlayer IjkExoMediaPlayer = new IjkExoMediaPlayer(mAppContext);
mediaPlayer = IjkExoMediaPlayer;
运行该程序就可以了,界面效果图如下所示:

 

该demo可以播放本地视频文件,以及网络流媒体。当然记得别选择用IjkExoMediaPlayer(没有配exo)。

5 修改后的demo

填写url,进行播放,如果有问题记得点击setting,修改播放器或其他配置。


deno下载地址:

http://www.demodashi.com/demo/10630.html


  • 3
    点赞
  • 14
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值