国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統(tǒng) > Android > 正文

android studio集成ijkplayer的示例代碼

2019-10-22 18:26:48
字體:
供稿:網(wǎng)友

介紹

ijkplayer是一款非常火的開源視頻播放器,android/223382.html">android和IOS通用。關(guān)于怎么編譯怎么導(dǎo)入android Studio中自己的項(xiàng)目,其中坑很多,本篇記錄下自己的操作記錄。ijkplayer現(xiàn)在的版本是0.8.3,當(dāng)然是使用最新的版本集成了。

編譯ijkplayer

關(guān)于編譯,我是在Ubuntu上編譯后拷貝到win10中的,ijkplayer源碼需要gcc編譯,windows各種不好用,如果使用cynwin還不如在ubuntu下編譯。

編譯的過程是下載sdk,ndk。設(shè)置環(huán)境變量后按照github上的說明編譯即可.

android studio集成ijkplayer

1.導(dǎo)入到你的項(xiàng)目中

android studio打開你的項(xiàng)目,F(xiàn)ile->Import Module...選擇ijkplayer的anroid/ijkplayer目錄,ijk-example依賴所有庫,所以導(dǎo)入后所有項(xiàng)目都會(huì)導(dǎo)入到你的項(xiàng)目中。

2.將android/ijkplayer目錄下的tools文件夾也拷貝到自己項(xiàng)目的根目錄下。

3. 在ijkplayer-java/src/main/目錄下新建一個(gè)名為jniLibs的文件夾,將各個(gè)ijkplayer-xxx目錄中的/src/main/libs目錄下的文件夾拷貝到j(luò)niLibs文件夾中,如:ijkplayer--armv7a的該目錄下包含armeabi-v7a這個(gè)文件夾,其中包含了該平臺(tái)對(duì)應(yīng)的.so文件,如果希望包含所有平臺(tái)的,就將所有ijkplayer-xxx下的全部拷過來,如果只希望某幾個(gè)平臺(tái)的,就只拷貝它們的。

4.將ijkplayer-xxx的目錄全部從項(xiàng)目中刪除掉,只保留ijkplayer-example、ijkplayer-java、ijkplayer-exo以及tools文件夾,其中ijkplayer-example依賴于后面幾個(gè)。android studio刪除項(xiàng)目需如下圖所示:

android,studio集成ijkplayer,ijkplayer,android集成ijkplayer

并將相對(duì)應(yīng)的文件夾刪除即可。

5.將ijkplayer-example修改為Module的形式,因?yàn)閕jkplayer-example本身是一個(gè)application工程,默認(rèn)不生成aar文件,且里面的資源互相依賴,難以像舊版本通過復(fù)制所需的幾個(gè)java文件到自己工程中的方式來使用,所以不如將整個(gè)ijkplayer-example轉(zhuǎn)換為我們工程的一個(gè)Module。具體方法是:

先修改ijkplayer-example目錄下的build.gradle文件,如下:

apply plugin: 'com.android.library' android {  // http://tools.android.com/tech-docs/new-build-system/tips  //noinspection GroovyAssignabilityCheck  compileSdkVersion rootProject.ext.compileSdkVersion  //noinspection GroovyAssignabilityCheck  buildToolsVersion rootProject.ext.buildToolsVersion   lintOptions {    abortOnError false  }  defaultConfig {     minSdkVersion 9    targetSdkVersion rootProject.ext.targetSdkVersion    versionCode rootProject.ext.versionCode    versionName rootProject.ext.versionName  }  buildTypes {    release {      minifyEnabled false      proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'    }  }   buildToolsVersion '25.0.0'} dependencies {  compile fileTree(include: ['*.jar'], dir: 'libs')  compile 'com.android.support:appcompat-v7:25.0.0'  compile 'com.android.support:preference-v7:23.0.1'  compile 'com.android.support:support-annotations:23.0.1'   compile 'com.squareup:otto:1.3.8'   compile project(':ijkplayer-java')  compile project(':ijkplayer-exo') }

注意:

  1. apply plugin: 'com.android.application'要改為apply plugin: 'com.android.library'
  2. applicationId "tv.danmaku.ijk.media.example"這句要去掉
  3. compile 'com.android.support:appcompat-v7:25.0.0'
    1. compile 'com.android.support:preference-v7:23.0.1'
    2. compile 'com.android.support:support-annotations:23.0.1'
    3. compile 'com.squareup:otto:1.3.8'

這幾個(gè)修改為自己安裝的版本。

6.在ijkplayer-example根目錄下增加一個(gè)gradle.properties文件,內(nèi)容如下:

 POM_NAME=ijkplayer-examplePOM_ARTIFACT_ID=ijkplayer-examplePOM_PACKAGING=aar

7.在自己的項(xiàng)目中添加依賴項(xiàng),如下圖所示:

android,studio集成ijkplayer,ijkplayer,android集成ijkplayer

完成上述操作,點(diǎn)擊async gradle即可。

其他錯(cuò)誤:

如果出現(xiàn)

Error:(3) Error retrieving parent for item: No resource found that matches the given name 'android:TextAppearance.Material.Widget.Button.Borderless.Colored'.

如上類似錯(cuò)誤,那是幾個(gè)項(xiàng)目的sdk版本不同引起的,四個(gè)項(xiàng)目包含你自己的項(xiàng)目的compileSdkVersion 、

buildToolsVersion、targetSdkVersion和compile 'com.android.support:appcompat-v7:25.0.0'
幾個(gè)版本必須要統(tǒng)一,如果不統(tǒng)一會(huì)出現(xiàn)各種問題。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持VEVB武林網(wǎng)。


注:相關(guān)教程知識(shí)閱讀請(qǐng)移步到Android開發(fā)頻道。
發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 荥经县| 唐海县| 内江市| 甘洛县| 潞西市| 西乌珠穆沁旗| 隆林| 乡宁县| 铜鼓县| 贵阳市| 平凉市| 辽源市| 汉川市| 吉林省| 武宣县| 铜山县| 浪卡子县| 龙门县| 原平市| 独山县| 澜沧| 麦盖提县| 仙居县| 邵阳市| 仁寿县| 佛山市| 阜康市| 弥渡县| 平远县| 梅河口市| 昂仁县| 松原市| 祥云县| 开化县| 丘北县| 唐海县| 翁源县| 泰兴市| 泰兴市| 元阳县| 固镇县|