版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
Android移動(dòng)應(yīng)用開發(fā)案例教程模塊三實(shí)現(xiàn)視頻播放任務(wù)1獲取本地視頻數(shù)據(jù)任務(wù)2實(shí)現(xiàn)視頻播放任務(wù)3視頻的播放和暫停任務(wù)4SeekBar更新視頻播放進(jìn)度任務(wù)5SeekBar實(shí)現(xiàn)視頻拖動(dòng)
任務(wù)1獲取本地視頻數(shù)據(jù)1模擬器中加入視頻保證模擬器為啟動(dòng)狀態(tài),在AndroidStudio右下角找到DeviceFileExplorer窗口并打開。在sdcard目錄上點(diǎn)擊右鍵—〉upload—〉從計(jì)算機(jī)中選擇想要上傳的文件。注意上傳的視頻文件不能太大,因?yàn)槲覀冊(cè)趧?chuàng)建模擬器時(shí),一般都是默認(rèn)的sdcard大小100M或200M,文件太大會(huì)導(dǎo)致上傳失敗。任務(wù)1獲取本地視頻數(shù)據(jù)2Android中權(quán)限的設(shè)置
Android安全架構(gòu)規(guī)定,默認(rèn)情況下,任何應(yīng)用都沒有權(quán)限執(zhí)行對(duì)其他應(yīng)用、操作系統(tǒng)或用戶有不利影響的任何操作。這包括讀寫用戶的私有數(shù)據(jù)(如聯(lián)系人或電子郵件等)、讀寫其它應(yīng)用的文件、執(zhí)行網(wǎng)絡(luò)訪問、使設(shè)備保持喚醒狀態(tài)等等。如果要使用這些受保護(hù)的設(shè)備功能,首先要在應(yīng)用的清單文件(AndroidManifest.xml)中添加一個(gè)或多個(gè)<uses-permission>標(biāo)記。任務(wù)1獲取本地視頻數(shù)據(jù)2Android中權(quán)限常用的權(quán)限設(shè)置
CHANGE_NETWORK_STATE
允許程序改變網(wǎng)絡(luò)連接狀態(tài)INTERNET網(wǎng)絡(luò)權(quán)限VIBRATE震動(dòng)WAKE_LOCK鎖屏READ_EXTERNAL_STORAGE讀存儲(chǔ)WRITE_EXTERNAL_STORAGE寫存儲(chǔ)SEND_SMS發(fā)短信RECEIVE_SMS收短信READ_SMS讀短信CALL_PHONE打電話任務(wù)1獲取本地視頻數(shù)據(jù)3適配器的編寫適配器Adapter是用來幫助添加數(shù)據(jù)的中間橋梁,是將各種數(shù)據(jù)以合適的形式顯示在View中給用戶看。Android中的一些高級(jí)控件在布局中加入時(shí)很簡(jiǎn)單,但是在添加數(shù)據(jù)時(shí)就需要我們編寫相應(yīng)的適配器為這些高級(jí)控件添加數(shù)據(jù)。比如我們之前的引導(dǎo)界面ViewPager、視頻列表ListView、代替ListView的RecyclerView都是需要適配器來加載和顯示數(shù)據(jù)。Adapter有很多的接口、抽象類、子類可以使用,這里就我們常用的幾個(gè)進(jìn)行講解ArrayAdapter,SimpleAdapter,BaseAdapter,RecyclerView.Adapter等。任務(wù)1獲取本地視頻數(shù)據(jù)3適配器的編寫
(1)ArrayAdapter數(shù)組適配器ArrayAdapter使用時(shí)直接new一個(gè)就可以,比較簡(jiǎn)單。ArrayAdapteradapter=newArrayAdapter(this,R.layout.act_main_item,data);第1個(gè)參數(shù):當(dāng)前activity,直接this就好;第2個(gè)參數(shù):資源文件,即layout布局;第3個(gè)參數(shù):數(shù)據(jù)源。任務(wù)1獲取本地視頻數(shù)據(jù)3適配器的編寫
(2)SimpleAdapter簡(jiǎn)單適配器SimpleAdapteradapter=newSimpleAdapter(
this,
data,
R.layout.act_main_item,
newString[]{"image","name"},
newint[]{R.id.sp_main_item_img,R.id.tv_main_item_content}
);第1個(gè)參數(shù):Context;第2個(gè)參數(shù):列表的數(shù)據(jù)源;第3個(gè)參數(shù):列表項(xiàng)的界面布局ID;第4個(gè)參數(shù):String數(shù)組,該參數(shù)決定數(shù)據(jù)集中哪些key對(duì)應(yīng)value生成列表項(xiàng);第5個(gè)參數(shù):整型數(shù)組,描述需要填充哪些控件。任務(wù)1獲取本地視頻數(shù)據(jù)3適配器的編寫
(3)BaseAdapter自定義適配器BaseAdapter通常用于被擴(kuò)展,擴(kuò)展的BaseAdapter可以自定義適配器,實(shí)現(xiàn)對(duì)各列表項(xiàng)進(jìn)行最大限度的定制。BaseAdapter是所有適配器類的父類,所以自定義適配器時(shí)要寫一個(gè)類繼承BaseAdapter,然后實(shí)現(xiàn)類中的四個(gè)方法。第一個(gè)方法getCount():返加當(dāng)前控件中要顯示的數(shù)據(jù)個(gè)數(shù);第二個(gè)方法getView():返回控件中每一個(gè)選項(xiàng)的布局,并且把這個(gè)View對(duì)象返回。每顯示一行新的內(nèi)容,都會(huì)調(diào)用getView方法返回對(duì)應(yīng)行的View對(duì)象;第三個(gè)方法getItem():返回當(dāng)前那一行的對(duì)象;第四個(gè)方法getItemId():返回當(dāng)前那一行的對(duì)象ID。任務(wù)1獲取本地視頻數(shù)據(jù)3適配器的編寫
(4)RecyclerView.Adapter視頻數(shù)據(jù)中如果將顯示視頻的控件換成RecyclerView控件,那就可以為此控件設(shè)置RecyclerView.Adapter。如果采用此適配器,事件處理需要在適配器中編寫。任務(wù)2實(shí)現(xiàn)視頻播放1VideoView視頻的控制
方法名稱功能描述start()開始播放pause()暫停setVideoPath()以文件路徑的方式設(shè)置VideoView播放的視頻源setVideoURI()以Uri的方式設(shè)置VideoView播放的視頻源,可以是網(wǎng)絡(luò)Uri或本地Uriresume()重新播放stopPlayback()停止播放isPlaying()當(dāng)前VideoView是否在播放視頻seekTo()從第幾毫秒開始播放getCurrentPosition()獲取當(dāng)前播放的位置getDuration()獲取當(dāng)前播放視頻的總長(zhǎng)度setMediaController()設(shè)置MediaController控制器任務(wù)2實(shí)現(xiàn)視頻播放1VideoView視頻的控制VideoView控件的常用事件監(jiān)聽方法,包括準(zhǔn)備好事件監(jiān)聽、播放完畢事件監(jiān)聽和播放出錯(cuò)事件監(jiān)聽監(jiān)聽器功能描述setOnPreparedListener()監(jiān)聽視頻裝載完成的事件setOnCompletionListener()監(jiān)聽播放完成的事件setOnErrorListener()監(jiān)聽播放發(fā)生錯(cuò)誤時(shí)候的事件任務(wù)2實(shí)現(xiàn)視頻播放2Activity之間參數(shù)的傳遞用intent可以實(shí)現(xiàn)activity之間相互跳轉(zhuǎn),在跳轉(zhuǎn)的同時(shí)我們不免也需要傳遞一些參數(shù),下面就介紹一下如何在一個(gè)activity里傳遞參數(shù),在另一個(gè)activity里接受參數(shù)。參數(shù)的傳遞大概可以總結(jié)為以下三種方式:在
Activity之間傳遞簡(jiǎn)單數(shù)據(jù)在Activity之間傳遞復(fù)雜數(shù)據(jù)在Activity之間傳遞自定義值對(duì)象任務(wù)2實(shí)現(xiàn)視頻播放2Activity之間參數(shù)的傳遞
(1)在
Activity之間傳遞簡(jiǎn)單數(shù)據(jù)主Activity:MainActivity傳遞參數(shù)Intentintent=newIntent(MainActivity.this,SystemVideoPlayer.class);//加入?yún)?shù),傳遞給AnotherActivityintent.putExtra("position",position);//傳遞視頻的位置startActivity(intent);目標(biāo)Activity:SystemVideoPlayer接收從主Activity傳遞過來的參數(shù)。getIntent().getStringExtra("position");任務(wù)2實(shí)現(xiàn)視頻播放2Activity之間參數(shù)的傳遞
(2)在Activity之間傳遞復(fù)雜數(shù)據(jù)傳遞復(fù)雜數(shù)據(jù)時(shí)我們可以使用數(shù)據(jù)包Bundle。Intentintent=newIntent(MainActivity.this,SystemVideoPlayer.class);Bundleb=newBundle();b.putString("name","小明");b.putInt("age",20);b.putChar("sex",'男');intent.putExtras(b);startActivity(intent);
獲取數(shù)據(jù)包Bundle:Intenti=getIntent();Bundledata=i.getExtras();任務(wù)5SeekBar實(shí)現(xiàn)視頻拖動(dòng)1SeekBar添加事件監(jiān)聽在拖動(dòng)條的任何地方按下鼠標(biāo)時(shí)先調(diào)用onStartTrackingTouch一次,再調(diào)用onProgressChanged一次。以后每拖動(dòng)一下調(diào)用onProgressChanged一次。松開鼠標(biāo)時(shí)調(diào)用onStopTrackingTouch一次。onProgressChanged(SeekBarseekBa
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年甲乙雙方石粉購銷合同協(xié)議
- 2024年租賃合同下的履約擔(dān)保書2篇
- 2024年農(nóng)業(yè)開墾與土地開發(fā)合同3篇
- 2024年度打樁機(jī)租賃及工程結(jié)算服務(wù)合同3篇
- 張飛電子課程設(shè)計(jì)
- 2024年度大型廠房出租合同(含租賃保證金及退還規(guī)定)3篇
- 2024年校園食堂智能化承包及服務(wù)保障合同3篇
- 2024年環(huán)保土方處理運(yùn)輸合同3篇
- 2024年沙石市場(chǎng)調(diào)研與采購咨詢合同3篇
- 智能電壓表課程設(shè)計(jì)
- 2024年度VR虛擬現(xiàn)實(shí)內(nèi)容創(chuàng)作合同
- 第五單元有趣的立體圖形 (單元測(cè)試)-2024-2025學(xué)年一年級(jí)上冊(cè)數(shù)學(xué) 北師大版
- 房地產(chǎn)中介業(yè)務(wù)管理制度
- 2024年湖南公務(wù)員考試申論試題(省市卷)
- 全國職業(yè)院校技能大賽中職(大數(shù)據(jù)應(yīng)用與服務(wù)賽項(xiàng))考試題及答案
- 審計(jì)基礎(chǔ)知識(shí)培訓(xùn)
- 義烏房地產(chǎn)市場(chǎng)月報(bào)2024年08月
- 陶藝課程課件
- 國家安全概論學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 人工智能崗位招聘筆試題及解答(某大型央企)2025年
- 蘋果電腦macOS效率手冊(cè)
評(píng)論
0/150
提交評(píng)論