在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

鴻蒙上安裝按鈕實(shí)現(xiàn)下載、暫停、取消、顯示等操作

OpenHarmony技術(shù)社區(qū) ? 來源:HarmonyOS技術(shù)社區(qū) ? 作者:HarmonyOS技術(shù)社區(qū) ? 2022-01-04 14:32 ? 次閱讀

今天給大家分享在鴻蒙上一個(gè)按鈕實(shí)現(xiàn)下載、暫停、取消、顯示下載進(jìn)度操作。

先看效果,如下圖:

開始

暫停

下載中

下載完成

取消下載

開始寫代碼

①PRDownloader 的配置

下載功能使用的是 PRDownloader:

https://gitee.com/chinasoft_ohos/PRDownloader

首先,在 moudle 級別下的 build.gradle 文件中添加依賴:

implementation'com.gitee.chinasoft_ohos1.0.0'

在 config.json 中添加互聯(lián)網(wǎng)許可:

"deviceConfig":{
"default":{
"directLaunch":false,
"network":{
"cleartextTraffic":true
}
}
}

"reqPermissions":[
{
"name":"ohos.permission.INTERNET"
}
]

在 AbilitySlice 的 onStart() 方法中初始化它。

PRDownloader.initialize(getApplicationContext());

②創(chuàng)建一個(gè) ProgressBar 進(jìn)度條

布局文件:


ProgressBar 的點(diǎn)擊事件:

progressBar.setClickedListener(newComponent.ClickedListener(){
@Override
publicvoidonClick(Componentcomponent){
if(downloadId==0){
newToastDialog(getContext()).setText("開始下載").show();
downloadId=PRDownloader.download(url,path,name)
.build()
//恢復(fù)下載
.setOnStartOrResumeListener(newOnStartOrResumeListener(){
@Override
publicvoidonStartOrResume(){
progressBar.setProgressHintText("正在下載");
}
})
//暫停下載
.setOnPauseListener(newOnPauseListener(){
@Override
publicvoidonPause(){
progressBar.setProgressHintText("恢復(fù)下載");
}
})
//取消下載
.setOnCancelListener(newOnCancelListener(){
@Override
publicvoidonCancel(){
progressBar.setProgressHintText("已取消下載");
}
})
//下載進(jìn)程 currentBytes當(dāng)前下載字節(jié),totalBytes文件總字節(jié)。
.setOnProgressListener(newOnProgressListener(){
@Override
publicvoidonProgress(Progressprogress){
longcurrentBytes=progress.currentBytes;
longtotalBytes=progress.totalBytes;
progressBar.setMaxValue((int)totalBytes);
progressBar.setProgressValue((int)currentBytes);
progressBar.setProgressHintText(newSizeUtil().getPrintSize(currentBytes)+"/"+newSizeUtil().getPrintSize(totalBytes));
}
})
.start(newOnDownloadListener(){
@Override
publicvoidonDownloadComplete(){
progressBar.setProgressHintText("下載完成");
status=PRDownloader.getStatus(downloadId);
text.setText(status.name());
}

@Override
publicvoidonError(Errorerror){
progressBar.setProgressHintText("下載出錯");
downloadId=0;
text.setText(error.getServerErrorMessage());
}
});
status=PRDownloader.getStatus(downloadId);
text.setText(status.name());
//QUEUEDRUNNING下載中
}elseif(status.name().equals("QUEUED")||status.name().equals("RUNNING")){
PRDownloader.pause(downloadId);
newToastDialog(getContext()).setText("暫停下載").show();
status=PRDownloader.getStatus(downloadId);
text.setText(status.name());
//PAUSED暫停
}elseif(status.name().equals("PAUSED")){
PRDownloader.resume(downloadId);
newToastDialog(getContext()).setText("恢復(fù)下載").show();
status=PRDownloader.getStatus(downloadId);
text.setText(status.name());
//已完成下載
}elseif(progressBar.getProgressHintText().equals("下載完成")){
text.setText("已下載完成,存儲路徑:
"+path);
}
}
});

取消下載的操作:(因?yàn)樾枰谝粋€(gè)按鈕上實(shí)現(xiàn)所以操作,所以取消使用長按來實(shí)現(xiàn))

progressBar.setLongClickedListener(newComponent.LongClickedListener(){
@Override
publicvoidonLongClicked(Componentcomponent){
newToastDialog(getContext()).setText("取消下載").show();
PRDownloader.cancel(downloadId);
downloadId=0;
progressBar.setProgressValue(0);
progressBar.setProgressHintText("開始下載");
status=PRDownloader.getStatus(downloadId);
text.setText(status.name());
}
});

原文標(biāo)題:鴻蒙手機(jī)上一個(gè)按鈕實(shí)現(xiàn)下載操作!

文章出處:【微信公眾號:HarmonyOS技術(shù)社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

審核編輯:彭菁

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4888

    瀏覽量

    70272
  • 鴻蒙
    +關(guān)注

    關(guān)注

    59

    文章

    2531

    瀏覽量

    43788

原文標(biāo)題:鴻蒙手機(jī)上一個(gè)按鈕實(shí)現(xiàn)下載操作!

文章出處:【微信號:gh_834c4b3d87fe,微信公眾號:OpenHarmony技術(shù)社區(qū)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦
    熱點(diǎn)推薦

    linkboy編程語言已初步支持鴻蒙操作系統(tǒng)

    linkboy是一門面向物聯(lián)網(wǎng)、邊緣計(jì)算、工業(yè)控制領(lǐng)域的自研編程語言,近期已初步完成對鴻蒙操作系統(tǒng)(OpenHarmony)的支持,實(shí)現(xiàn)了編譯器后端工具鏈和相關(guān)組件在
    發(fā)表于 07-09 08:08

    鴻蒙上安裝docker嗎?

    android是不支持安裝docker的,想了解下鴻蒙是否支持安裝docker
    發(fā)表于 03-21 16:32

    打印機(jī)如何取消打印任務(wù)

    如果文檔正在打印過程中需要取消打印任務(wù),則直接點(diǎn)擊打印任務(wù)窗口中的“暫停按鈕即可取消打印任務(wù)。也可能通過點(diǎn)擊Windows任務(wù)欄右下角的打印機(jī)圖標(biāo)來打開“打印任務(wù)”窗口,然后點(diǎn)擊“
    的頭像 發(fā)表于 04-12 16:10 ?7w次閱讀

    FPGA的Quartus ModelSim的安裝介紹和使用基本操作資料免費(fèi)下載

    本文檔的主要內(nèi)容詳細(xì)介紹的是FPGA的Quartus和ModelSim安裝介紹和使用基本操作資料免費(fèi)下載。
    發(fā)表于 03-23 15:49 ?24次下載
    FPGA的Quartus ModelSim的<b class='flag-5'>安裝</b>介紹和使用<b class='flag-5'>等</b>基本<b class='flag-5'>操作</b>資料免費(fèi)<b class='flag-5'>下載</b>

    華為手機(jī)怎樣安裝鴻蒙系統(tǒng) 鴻蒙系統(tǒng)升級流程

    升級的名單,如果自己使用的華為手機(jī)在第一批名單里,那么可以使用下面的方法來安裝鴻蒙系統(tǒng)。 1.打開“設(shè)置”應(yīng)用 2.在系統(tǒng)里點(diǎn)進(jìn)“系統(tǒng)更新” 3.點(diǎn)擊右上角,進(jìn)入“更新設(shè)置” 4.打開“WLAN環(huán)境自動下載
    的頭像 發(fā)表于 06-03 18:04 ?11w次閱讀
    華為手機(jī)怎樣<b class='flag-5'>安裝</b><b class='flag-5'>鴻蒙</b>系統(tǒng) <b class='flag-5'>鴻蒙</b>系統(tǒng)升級流程

    華為鴻蒙官網(wǎng)首頁 華為鴻蒙官網(wǎng)下載安裝

    華為鴻蒙官網(wǎng)首頁如何下載安裝鴻蒙操作系統(tǒng)?目前,鴻蒙OS官網(wǎng)已經(jīng)正式上線了,鴻蒙OS的代碼以組件
    的頭像 發(fā)表于 06-17 10:18 ?1.5w次閱讀

    華為官網(wǎng)鴻蒙系統(tǒng)下載安裝 華為鴻蒙系統(tǒng)下載地址

    華為鴻蒙2.0系統(tǒng)已經(jīng)上線一段時(shí)間了,華為官網(wǎng)鴻蒙系統(tǒng)如何下載安裝?華為鴻蒙系統(tǒng)下載地址在哪?接下來跟小編一起來看看
    的頭像 發(fā)表于 06-21 09:35 ?3w次閱讀

    華為手機(jī)安裝鴻蒙系統(tǒng)教程

    華為已經(jīng)正式公布了全新的鴻蒙操作系統(tǒng),使用華為手機(jī)、平板的用戶便可以下載安裝鴻蒙系統(tǒng)。
    的頭像 發(fā)表于 07-07 11:49 ?2.1w次閱讀

    鴻蒙描述文件下載后如何安裝

    備受關(guān)注的華為鴻蒙操作系統(tǒng)已經(jīng)發(fā)布有好一段時(shí)間了,相信很多用戶朋友對描述文件不是很理解,鴻蒙描述文件下載后如何安裝?
    的頭像 發(fā)表于 07-12 09:16 ?5538次閱讀

    鴻蒙上使用Python進(jìn)行物聯(lián)網(wǎng)編程

    炫耀!然而,這卻是非常重要的一步:在鴻蒙上用使用 Python 進(jìn)行物聯(lián)網(wǎng)編程是可行的?。。?既然可行,加上 Python 語言天生的優(yōu)勢(易于掌握,開發(fā)效率高),那么真的值得持續(xù)打造,將鴻蒙上的 Python 進(jìn)行到底。 所以,今天的主題就是利用 GPIO 搭配 I2C
    的頭像 發(fā)表于 09-28 09:55 ?4628次閱讀
    在<b class='flag-5'>鴻蒙上</b>使用Python進(jìn)行物聯(lián)網(wǎng)編程

    鴻蒙上實(shí)現(xiàn)“數(shù)字華容道”小游戲

    本篇文章教大家如何在鴻蒙上實(shí)現(xiàn)“數(shù)字華容道”小游戲。
    的頭像 發(fā)表于 12-26 09:52 ?1501次閱讀

    鴻蒙上實(shí)現(xiàn)簡單的“每日新聞”

    這是一篇講解如何實(shí)現(xiàn)基于鴻蒙 JS 的簡單的每日新聞。
    的頭像 發(fā)表于 12-26 09:58 ?1112次閱讀

    鴻蒙上開發(fā)“小蜜蜂”游戲

    小時(shí)候我們有個(gè)熟悉的游戲叫小蜜蜂。本文教大家在鴻蒙上學(xué)做這個(gè)小蜜蜂游戲。
    的頭像 發(fā)表于 04-03 11:27 ?1939次閱讀

    基于ArkUI request API實(shí)現(xiàn)下載進(jìn)度獲取及顯示

    本文基于 ArkUI request API 實(shí)現(xiàn)下載進(jìn)度獲取及顯示
    的頭像 發(fā)表于 04-04 16:53 ?1907次閱讀

    鴻蒙上實(shí)現(xiàn)直接安裝hap

    的開源應(yīng)用陸續(xù)添加進(jìn)去。 那為了實(shí)現(xiàn)這個(gè)小目標(biāo),首先要解決的問題肯定是如何在設(shè)備端實(shí)現(xiàn)直接安裝 hap,完全脫離電腦 hdc 命令。 效果如下: 關(guān)于這個(gè)問題,現(xiàn)階段網(wǎng)上可能搜不到什么特別有價(jià)值的信息,那只能自己探索了,經(jīng)過幾天
    的頭像 發(fā)表于 04-11 19:06 ?7059次閱讀
    主站蜘蛛池模板: 久久久久国产精品免费网站 | 色偷偷91综合久久噜噜噜男男 | 欧美乱妇高清无乱码 | 康熙古代高h细节肉爽文全文 | 国产成人精品日本亚洲专 | rrr523亚洲国产片 | 天天操夜夜操视频 | 狼色视频在线观免费观看 | 国产毛片毛片精品天天看 | 色老头久久久久久久久久 | 午夜肉伦伦影院在线观看 | 亚洲成在人线影视天堂网 | 五月天婷婷网亚洲综合在线 | 国产一区二区三区美女在线观看 | 欧美jizz大又粗 | 四虎884 | 久久久久国产一级毛片高清版 | 女人张开双腿让男人桶完整 | 亚洲无线码一区在线观看 | 68日本xxxxxxx18| 男女做视频网站免费观看 | 色综合天天色 | 日韩特级毛片 | 国产免费卡1卡2卡 | 伊人网站在线 | 六月婷婷导航福利在线 | 免费成人看片 | 操操操综合网 | 四虎永久免费影院在线 | 成人免费一区二区三区 | 亚洲youjizz | 222aaa免费国产在线观看 | 欧美猛交lxxxxxxxxx | 国产美女视频黄a视频全免费网站 | 欧美亚洲天堂网 | 人人九九精 | 免费簧片视频 | www.四虎| 男女交性永久免费视频播放 | 美女禁处 | 天天看片夜夜爽 |