国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

java - 學(xué)習(xí)做一個(gè)安卓視頻播放器,有一些小問題!忘大家請(qǐng)教

瀏覽:174日期:2024-01-30 14:10:25

問題描述

最近在學(xué)習(xí)安卓開發(fā),有一些JAVA基礎(chǔ),想做一個(gè)簡(jiǎn)單的視頻播放器,現(xiàn)在卡到了獲取視頻文件路徑這一點(diǎn)上,現(xiàn)在已經(jīng)會(huì)用Mediaplay,video等控件,但是只能每一次在AS中輸入程序路徑,想能夠在程序上去獲取本地所有視頻路徑,然后可以選擇播放,可是網(wǎng)上查了很多,很多代碼也運(yùn)行不起也看的不是很懂,所以希望大家能給一個(gè)思路,我好在去學(xué)習(xí)。這個(gè)查了快一點(diǎn)了,也沒有解決!謝謝大家

問題解答

回答1:

兩種方式

1、簡(jiǎn)單點(diǎn)的,調(diào)用系統(tǒng)中的文件選擇器來幫你找尋你需要的文件,把路徑返回給你,代碼量小也很容易,簡(jiǎn)單如下:

private void pickFile() { Intent intent = new Intent(); //意圖類型過濾,指定視頻類型文件 intent.setType('video/*'); //意圖動(dòng)作,選取內(nèi)容 intent.setAction(Intent.ACTION_GET_CONTENT); startActivityForResult(intent, 0x01);}...@Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == 0x01 && resultCode == RESULT_OK) {Uri uri = data.getData();Cursor cursor = getContentResolver().query(uri, null, null, null, null);cursor.moveToFirst();//獲取文件路徑String path = cursor.getString(1); }}

2、自己實(shí)現(xiàn)文件管理器,通過掃描系統(tǒng)存儲(chǔ)器上的文件,來篩選你需要的文件類型,那就復(fù)雜一點(diǎn)了,涉及到ContentResolver,Uri,Cursor,MediaStore,MimeType,Intent等這幾大塊的知識(shí)點(diǎn),復(fù)雜麻煩是肯定的,要做好一個(gè)東西就不要怕麻煩,去啃。

第一種方式讓你知其然,第二種方式讓你知其所以然。

把“望”字寫對(duì),不是“忘”。

第二種方式,給你這些參考,自己照著去實(shí)現(xiàn)一遍,也就差不多了。

回答2:

首先解決你的一點(diǎn)疑惑,如何獲取本地所有視頻路徑。Android系統(tǒng)在存儲(chǔ)視頻,音頻,圖片等資源的時(shí)候,會(huì)自動(dòng)把其相關(guān)信息存儲(chǔ)在數(shù)據(jù)庫(kù)中,信息包括名字,大小,存儲(chǔ)路徑等。假如我們播放某一視頻文件,從數(shù)據(jù)庫(kù)中獲取其存儲(chǔ)路徑,然后通過路徑獲取視頻本身。那么你需要做以下幾件事:1、了解存儲(chǔ)Android視頻信息數(shù)據(jù)庫(kù)的名稱,字段2、了解獲取Android獲取數(shù)據(jù)庫(kù)中數(shù)據(jù)的方法,Android已經(jīng)封裝好的看下掃描所有Video信息的代碼,隨手搜的,不確保是對(duì)的哈,給你注釋下。

private void scanVideoUri(){//通過ContentResolver從數(shù)據(jù)庫(kù)獲取信息,Curse是獲取的結(jié)果Cursor cursor = mContext.getContentResolver().query(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, null, null, null, null);int totalCount =cursor.getCount();//計(jì)算所有結(jié)果的條數(shù)cursor.moveToFirst();//此句一定要有//遍歷所有的Video信息for( int i = 0;i < totalCount;i++){ String data = cursor.getString(cursor.getColumnIndex(MediaStore.MediaColumns.DATA)); String data1 = cursor.getString(cursor.getColumnIndex(MediaStore.Video.Media.DATA)); String title = cursor.getString(cursor.getColumnIndex(MediaStore.Video.Media.TITLE)); String type = cursor.getString(cursor.getColumnIndex(MediaStore.Video.Media.MIME_TYPE)); int id = cursor.getInt(cursor.getColumnIndex(MediaStore.Video.Media._ID)); Log.e(TAG, data+title+type); cursor.moveToNext();//訪問下一個(gè)} }

代碼看不懂很正常,把目標(biāo)分解,然后拼接就會(huì)得到最后的結(jié)果。

回答3:

讀取系統(tǒng)數(shù)據(jù)庫(kù),所有在你手機(jī)視頻列表里面可以看到的視頻,都可以直接查找出來。具體實(shí)現(xiàn)可以問下度娘~

回答4:

http://blog.csdn.net/github_3... 這個(gè)教程不錯(cuò)

標(biāo)簽: java
相關(guān)文章:
主站蜘蛛池模板: 香蕉超级碰碰碰97视频蜜芽 | 国产波多野结衣中文在线播放 | 色网站在线| 九九视频在线观看视频6 | 欧美日韩免费一区二区在线观看 | 欧美午夜视频一区二区 | 手机在线观看黄色网址 | 欧美一级在线视频 | 日本韩国一区二区三区 | 久久九九国产精品怡红院 | 亚洲影院在线 | 亚洲美女在线播放 | 免费看三级毛片 | 欧美一区二区三区不卡免费观看 | 日本特级视频 | 一个人的视频日本免费 | 美女被免费网站在线视频软件 | 三级黄色免费网站 | 国产精品成人一区二区不卡 | 99re久久资源最新地址 | 国产九区 | 欧美三级欧美一级 | 一本一道波多野结衣456 | 免费特黄一级欧美大片 | 中国女警察一级毛片视频 | 美女扒开腿让男生桶爽网站 | 久久精品99 | 成视频年人黄网站免费 | 国产成版人视频网站免费下 | 国产成人精品999在线 | 国产高清视频免费观看 | 精品一精品国产一级毛片 | 欧美成人精品三级网站 | 狠狠狠狠狠| 91福利国产在线观一区二区 | ppypp日本欧美一区二区 | 欧美一二三区在线 | 中文在线日韩 | 91精品国产91热久久久久福利 | 欧美一级高清毛片aaa | 欧美zoofilia杂交videos |