亚洲国产日韩欧美一区二区三区,精品亚洲国产成人av在线,国产99视频精品免视看7,99国产精品久久久久久久成人热,欧美日韩亚洲国产综合乱

java - 學(xué)習(xí)做一個安卓視頻播放器,有一些小問題!忘大家請教
迷茫
迷茫 2017-04-18 10:49:29
0
4
783

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

迷茫
迷茫

業(yè)精于勤,荒于嬉;行成于思,毀于隨。

全部回覆(4)
Peter_Zhu

兩種方式

1、簡單點的,呼叫系統(tǒng)中的文件選擇器來幫你找尋你需要的文件,把路徑回傳給你,程式碼量小也很容易,簡單如下:

private void pickFile() {
    Intent intent = new Intent();
    //意圖類型過濾,指定視頻類型文件
    intent.setType("video/*");
    //意圖動作,選取內(nèi)容
    intent.setAction(Intent.ACTION_GET_CONTENT);
    startActivityForResult(intent, 0x01);
}

.
.
.

@Override
protected 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、自己實現(xiàn)文件管理器,透過掃描系統(tǒng)記憶體上的文件,來篩選你需要的文件類型,那就複雜一點了,涉及到ContentResolver,Uri,Cursor,MediaStore,MimeType,Intent等這幾大塊的知識點,複雜麻煩是肯定的,要做好一個東西就不要怕麻煩,去啃。

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

把「望」字寫對,不是「忘記」。

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

小葫蘆

先解決你的一點疑惑,如何取得本地所有視訊路徑。 Android系統(tǒng)在儲存視頻,音頻,圖片等資源的時候,會自動把其相關(guān)資訊儲存在資料庫中,資訊包括名字,大小,儲存路徑等。假如我們播放某一影片文件,從資料庫中取得其儲存路徑,然後透過路徑取得影片本身。那你需要做以下幾件事:
1、了解儲存Android視訊資訊資料庫的名稱,欄位
2、了解取得Android取得資料庫中資料的方法,Android已經(jīng)封裝好的
看下掃描所有Video資訊的程式碼,隨手搜的,不確保是對的哈,給你註解下。

private void scanVideoUri(){
        //通過ContentResolver從數(shù)據(jù)庫獲取信息,Curse是獲取的結(jié)果
        Cursor cursor = mContext.getContentResolver().query(MediaStore.Video.Media.EXTERNAL_CONTENT_URI, 
                        null, null, null, null);
        int totalCount =cursor.getCount();//計算所有結(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();//訪問下一個
        }
    }
    

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

阿神

讀取系統(tǒng)資料庫,所有在你手機(jī)視頻列表裡面可以看到的視頻,都可以直接找到。具體實現(xiàn)可以問下度娘~

左手右手慢動作

http://blog.csdn.net/github_3... 這個教學(xué)不錯

最新下載
更多>
網(wǎng)站特效
網(wǎng)站源碼
網(wǎng)站素材
前端模板