精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

HarmonyOS - 實現消息定時提醒

系統 OpenHarmony
對于提醒類ReminderRequest的3個子類來說,ReminderRequestTimer用于倒計時提醒,ReminderRequestAlarm用于鬧鐘類提醒,ReminderRequestCalendar類用于日歷類提醒。

??想了解更多關于開源的內容,請訪問:??

??51CTO 開源基礎軟件社區??

??https://ost.51cto.com??

前言

在一些應用中,需要通過時間設置提醒用戶操作,如鬧鐘,象棋步數倒計時等。

設計思路:將對時間的獲取與響應的結果拆分開,時間的獲取可以有倒計時與直接設計時間。響應結果可以是:震動,閃爍,通知欄,鈴聲。

項目涵蓋了IntetAgent,通知,以及JS FA調用PA等知識點,項目應用到了前面同事編寫的計時器組件??#夏日挑戰賽# HarmonyOS - 自定義組件之計時器??。

效果展示

如果需要展示震動和彈出效果,需要通過物理機進入通知管理,勾選橫幅通知和鎖屏通知并且修改震動為其他震動方式。

倒計時提醒如下圖:

#夏日挑戰賽# HarmonyOS - 實現消息定時提醒-開源基礎軟件社區


鬧鐘類提醒如下圖:

#夏日挑戰賽# HarmonyOS - 實現消息定時提醒-開源基礎軟件社區


實現步驟

1、聲明權限

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

2、構建前端頁面

前端頁面主要是獲取設置的倒計時以及設置的鬧鐘類的時間,封裝進一個對象ActionData通過調用接口傳遞給PA處理。

主要分為兩部分:一部分是倒計時提醒界面,一部分是鬧鐘類提醒界面。

在編寫頁面的時候遇到了一個問題:由于初步編寫hml頁面,不知道如何實現input輸入框的雙向綁定,后面請教后解決:通過change事件來觸發。

hml代碼如下:

<element name="countDown" src="../countDown/countDown.hml">
</element>
<div class="container">
<!--倒計時功能區域-->
<div class="box">
<text>倒計時: {{ leftTime }} s</text>
<input type="text" id="countDown" onchange="changeCountDown"></input>
<countDown time="{{ leftTime }}">
</countDown>
<div>
<button class="button" value="設置" onclick="alarmCountdown"></button>
</div>
</div>
<!--定時功能區域-->
<div class="box">
<form>
<text>時:</text>
<input type="text" id="hour" onchange="changeHour"></input>
<text>分:</text>
<input type="text" id="minute" onchange="changeMinute"></input>
<div>
<button class="button" value="設置" onclick="alarmClock"></button>
<button class="button" value="取消" onclick="cancel"></button>
</div>
</form>
</div>
</div>

主要js代碼如下:

通過不同的命令實現不同的調用。

//雙向綁定實現
changeHour(event){
this.hour=event.value;
},
changeMinute(event){
this.minute=event.value
},
changeCountDown(event){
this.countDown=event.value
},
//鬧鐘類提醒
alarmClock:function(){
this.notification(0x1003);
},
//倒計時提醒
alarmCountdown:function(){
this.leftTime=0;//重置倒計時的讀秒
this.leftTime=this.countDown;//同步倒計時讀秒
this.notification(0x1002);
},
//取消提醒
cancel:function(){
this.notification(0x1001);
},
//初始化action數據
initAction: function (code) {
var actionData = {hour:this.hour,minute:this.minute,countDown:this.countDown};
actionData.notify = "this actionData form JS ";
var action = {};
action.bundleName = "com.chinasoft.reminder";
action.abilityName = "ReminderAbility";
action.messageCode = code;
action.data = actionData;
action.abilityType = 1;
action.syncOption = 0;
return action;
},
//調用PA接口
notification: async function(code) {
try {
var action = this.initAction(code);
var result = await FeatureAbility.callAbility(action);
this.showToast(result);
} catch (pluginError) {
console.error("startNotification : Plugin Error = " + pluginError);
}
},

3、設置ReminderRequest類

(1)設置通知插槽NotificationSlot

這里有個坑,需要手動設置手機的通知管理的通知鈴聲,打開震動才有震動效果,打開橫幅通知才有通知彈出效果。設置如下圖:

#夏日挑戰賽# HarmonyOS - 實現消息定時提醒-開源基礎軟件社區


設置通知slot需要真實的手機才有震動效果,設置呼吸燈需要手機支持呼吸燈才有效果。

/*
* 設置通知slot
* */
private NotificationSlot setSlot() {
// 1. 設置渠道信息
NotificationSlot slot = new NotificationSlot("slot_id", "slot_name", NotificationSlot.LEVEL_HIGH);
slot.setDescription("slot_description");//設置NotificationSlot的描述信息。
slot.enableBypassDnd(true);//設置是否繞過系統的免打擾模式
slot.setEnableLight(false);//設置收到通知時是否開啟呼吸燈,前提是當前硬件支持呼吸燈。
slot.setEnableVibration(true);//設置收到通知時是否使能振動。
slot.setLedLightColor(123456);
return slot;
}
// 2. 向代理服務添加渠道對象
ReminderHelper.addNotificationSlot(setSlot());

(2)創建提醒類對象

ReminderRequest分為3個子類:1.ReminderRequestTimer ,2.ReminderRequestCalendar ,3.ReminderRequestAlarm。

ReminderRequestTimer 對象創建。

用于倒計時提醒,需要傳遞進一個倒計時的秒的參數。這個數據是從前端頁面傳過來的。

ReminderRequest reminderRequestTimer = new ReminderRequestTimer(countDown);

ReminderRequestAlarm對象創建。

用于鬧鐘類提醒,需要傳遞時間數據。需要三個參數:int hour,int minute,int[] repeatDay。

ReminderRequest reminder = new ReminderRequestAlarm(hour, minute, repeatDay);

(3)設置提醒標題和內容

提醒是以通知形式來表現的。設置通知展示的標題和內容。

reminderRequestTimer.setTitle("倒計時").setContent("炸彈");      //設置標題和內容

(4)設置提醒時長屬性

提醒默認提醒一次,如果需要提醒能長時間提醒,進行如下設置:

reminder.setRingDuration(10);//設置提醒時長

(5)設置IntentAgent

需要設置BundleName和AbilityName。且AbilityName需要全類名(加上包名),才能實現頁面的跳轉。點擊提醒彈出的通知就會跳轉到對應的頁面。

reminder.setIntentAgent(BUNDLE_NAME, ABILITY_NAME);

(6)設置延時提醒,功能按鈕

延時提醒和設置延時的時間,設置延時后提醒的次數。

當提醒時會發出通知,設置延遲提醒和關閉按鈕。

reminder.setSnoozeTimes(2)     //設置延遲提醒次數
.setTimeInterval(1 * 60);//設置一分鐘,實際為5分鐘
reminder.setActionButton("延遲", ReminderRequest.ACTION_BUTTON_TYPE_SNOOZE)
.setActionButton("關閉", ReminderRequest.ACTION_BUTTON_TYPE_CLOSE);

在這里有一個坑:通過測試得,延遲提醒的最短時間為300s(5分鐘)如果設置時間小于300s則為默認的。

注意:對于倒計時提醒設置延遲提醒不起作用,只有設置提醒時長有效。

(7)發布和取消提醒

發布和取消提醒都是通過ReminderHelper這個類來完成的,取消提醒需要獲取發布提醒后返回的一個整型id來識別需要取消哪一個提醒。

int reminderId = ReminderHelper.publishReminder(reminder);//發布提醒
ReminderHelper.cancelReminder(this.reminderId);//取消提醒

總結

對于提醒類ReminderRequest的3個子類來說,ReminderRequestTimer用于倒計時提醒,ReminderRequestAlarm用于鬧鐘類提醒,ReminderRequestCalendar類用于日歷類提醒。本項目還有日歷類提醒(ReminderRequestCalendar)的功能沒有實現,通過API可以發現其與鬧鐘類提醒的功能實現大致一樣。在運用時需要注意其中的一些細節,才能正確使用。

??想了解更多關于開源的內容,請訪問:??

??51CTO 開源基礎軟件社區??

??https://ost.51cto.com??。

責任編輯:jianghua 來源: 鴻蒙社區
相關推薦

2013-03-11 10:11:21

Windows 8消息提醒

2009-12-14 13:42:13

Linux桌面Linux蘋果

2022-11-07 10:43:20

RocketMQConsumer場景

2019-02-25 15:44:16

開源RabbitMQSpring Clou

2022-07-01 17:14:03

消息通知鴻蒙

2021-08-04 10:22:27

鴻蒙HarmonyOS應用

2017-03-20 09:50:35

消息隊列架構消息

2011-09-05 17:40:40

MTK定時器

2010-06-09 15:15:34

MySQL定時執行

2019-12-26 09:38:57

GitHub工具 wxpy

2022-01-26 07:01:00

開源社區項目

2009-10-12 14:32:40

VB.NET實現定時關

2024-11-04 16:01:01

2020-12-21 07:31:23

實現單機JDK

2024-12-27 08:24:55

2011-09-16 11:08:10

IOS應用易提醒

2025-01-10 08:20:00

MQ消息架構

2020-08-26 07:17:19

通信

2024-03-22 12:10:39

Redis消息隊列數據庫

2023-12-11 09:50:35

Linux定時器
點贊
收藏

51CTO技術棧公眾號

亚洲色图欧美色| 欧美国产视频一区| 中文字幕av第一页| 成人在线免费小视频| 欧美午夜不卡视频| 国产精品12p| 亚洲春色一区二区三区| 最新亚洲一区| 亚洲图片在线综合| 成年人三级黄色片| 都市激情久久综合| 91免费看`日韩一区二区| 国产福利成人在线| 欧美人妻精品一区二区免费看| 91精品导航| 色婷婷狠狠综合| 中文精品一区二区三区| 亚洲毛片在线播放| 全部av―极品视觉盛宴亚洲| 欧美成人sm免费视频| 美女又爽又黄视频毛茸茸| 成人深夜福利| 亚洲成av人片在线| 在线不卡视频一区二区| 网站黄在线观看| 六月天综合网| 欧美日韩成人免费| av电影在线不卡| 亚洲一区网址| 色成人在线视频| 免费高清一区二区三区| 97视频精彩视频在线观看| 高清不卡一二三区| 国产欧美精品日韩精品| 日韩欧美不卡视频| 亚洲九九视频| 在线成人中文字幕| 加勒比精品视频| 久久精品免视看国产成人| 在线精品视频一区二区| 日韩a级在线观看| 男女啪啪在线观看| 国产欧美一区在线| 久久国产精品久久精品国产| 精品国产伦一区二区三区| 日韩专区欧美专区| 97色在线播放视频| 五月婷婷一区二区| 国产精品久久占久久| 亚洲天堂精品在线| 中日韩精品一区二区三区| jizz性欧美23| 日韩视频在线永久播放| gai在线观看免费高清| 蜜桃成人精品| 日韩欧美国产网站| 丰满少妇被猛烈进入高清播放| 91蜜桃在线视频| 国产精品成人免费精品自在线观看| 久久久久久久久一区二区| 亚洲伦理在线观看| 国产成人av网站| 91久久爱成人| 国产色综合视频| 激情av综合网| 成人午夜小视频| 一个人看的www日本高清视频| 老司机免费视频久久| 538国产精品一区二区免费视频| 黄色一级片在线免费观看| 亚洲91精品| 日韩视频免费在线| 爱爱视频免费在线观看| 久久久久久久久久久久久久| 美女啪啪无遮挡免费久久网站| 国精品无码一区二区三区| 欧美fxxxxxx另类| 欧美精品在线播放| 国产一级在线视频| 亚洲精品综合| 欧美中文字幕精品| 成人a v视频| 免费不卡在线视频| 成人免费视频网址| 不卡的日韩av| 福利一区二区在线| 鲁鲁狠狠狠7777一区二区| 黄色在线网站| 国产精品嫩草久久久久| 免费观看国产视频在线| 韩国成人免费视频| 日韩欧美中文字幕在线观看| 亚洲视频在线观看一区二区三区| 国产成人77亚洲精品www| 91精品国产欧美一区二区| 欧美一级大片免费看| 欧美五码在线| 综合国产在线视频| 久久久久无码精品国产| 老鸭窝毛片一区二区三区 | 草草影院第一页| 国产一区二区三区网| 久久精品亚洲94久久精品| 九九热只有精品| 美女黄色成人网| 国产精品普通话| 超碰免费在线97| 久久综合色8888| 亚洲美女自拍偷拍| 中文字幕乱码在线播放| 正在播放亚洲一区| 人妻丰满熟妇av无码久久洗澡| 不卡一区综合视频| 国语自产精品视频在线看抢先版图片 | 国产精品女人网站| 国产成人精品无码高潮| 久久亚洲一级片| 樱空桃在线播放| 中文在线免费视频| 欧美成人精品1314www| 中文字幕 自拍| 国内精品福利| 国产精品夜间视频香蕉| 日日夜夜精品免费| 综合久久国产九一剧情麻豆| 欧美精品色婷婷五月综合| 麻豆国产一区二区三区四区| 国产一区二区三区在线看| 在线看成人av| 国模大尺度一区二区三区| 欧美精品成人一区二区在线观看| 国产素人视频在线观看| 91福利在线导航| japanese在线观看| 你懂的视频一区二区| 国产精品成人免费视频| 天堂av中文在线资源库| 亚洲永久精品大片| 久久久福利影院| 久久美女视频| 国产精品成人免费视频| 牛牛影视精品影视| 精品欧美一区二区三区| 天堂www中文在线资源| 国产精品mm| 亚洲xxx自由成熟| 午夜看片在线免费| 欧美亚洲动漫制服丝袜| 欧美特级黄色录像| 国产精品日本| 久久久久久久久一区| sm在线播放| 亚洲国产精品女人久久久| 国产亚洲精品久久久久久无几年桃| 精品午夜一区二区三区在线观看 | 老司机午夜福利视频| 一区二区高清免费观看影视大全| 91精品国产三级| 亚洲色图88| 91九色露脸| 麻豆av在线播放| 亚洲国产91精品在线观看| 精品无码久久久久| 波多野结衣中文一区| 成人性生活视频免费看| 国产精品高潮呻吟久久久久| 国内精品久久久久伊人av| 日本免费一区视频| 欧美日韩一区二区三区 | 国产日韩欧美精品一区| 成人免费xxxxx在线视频| 成人高清av| 91精品久久久久久久久久| 黄黄的网站在线观看| 日韩欧美精品在线视频| 日韩成人免费在线视频| 久久久久久久久久久99999| 九色porny91| 视频在线不卡免费观看| 亚洲一区二区久久久久久久| 欧美黑人xx片| 国产网站欧美日韩免费精品在线观看| 中文人妻av久久人妻18| 中文字幕av资源一区| 色网站在线视频| 亚洲黄色av| 日本一区二区三区四区高清视频 | 日本日本19xxxⅹhd乱影响| 免费精品国产的网站免费观看| 国产精品成av人在线视午夜片| 黄色一级片在线观看| 亚洲第一区在线观看| 精品一区二区无码| 亚洲精品伦理在线| 国产精品无码一区二区三区免费| 日韩vs国产vs欧美| 日韩成人午夜影院| 一本色道久久综合亚洲精品酒店| 国产在线精品自拍| 91九色在线播放| 中日韩美女免费视频网站在线观看| 99精品在线看| 色视频欧美一区二区三区| 老湿机69福利| 久久久久久久久久看片| 91欧美一区二区三区| 亚洲精品美女91| 亚洲人成77777| 久本草在线中文字幕亚洲| 国产精品自拍偷拍| 擼擼色在线看观看免费| 久久久av一区| 国产一二三区在线| 亚洲成色999久久网站| 丰满熟女人妻一区二区三| 亚洲一区二区视频在线观看| 精品无码在线观看| 成人av免费在线观看| 成人不卡免费视频| 天堂va蜜桃一区二区三区| www.国产在线视频| 91精品国产91久久久久久黑人| 免费精品视频一区| 草草视频在线一区二区| 成人免费观看a| 精品裸体bbb| 57pao成人永久免费视频| 污污的网站在线看| 久久精品电影网| 国产精品毛片一区二区三区四区| 亚洲二区在线播放视频| 国产视频在线免费观看| 欧美特级限制片免费在线观看| 久久草视频在线| 一区二区三区四区蜜桃| 日本不卡一二区| 国产婷婷一区二区| 久久中文字幕人妻| 99久久亚洲一区二区三区青草| 少妇性l交大片7724com| 麻豆国产一区二区| 手机看片福利日韩| 视频在线观看国产精品| 国产在线青青草| 在线欧美视频| 日韩av在线播放不卡| 国内一区二区三区| 黄色录像特级片| 亚欧美无遮挡hd高清在线视频| 先锋影音日韩| 欧美日中文字幕| 日韩欧美一区二区三区四区五区| 曰本一区二区三区视频| 久久久久久欧美精品色一二三四| 九九热播视频在线精品6| 狠狠色噜噜狠狠色综合久| 久久大胆人体视频| 激情小说综合网| 老司机精品在线| 久久av一区二区三区亚洲| 卡通动漫国产精品| 免费精品视频一区| 欧美丝袜激情| 中文字幕一区二区三区有限公司| 欧美freesextv| 国产成人三级视频| 欧美日本中文| 精品少妇在线视频| 国产精品久久国产愉拍| 黄色一级大片在线观看| 狂野欧美一区| 国内自拍第二页| 国产suv精品一区二区三区| 大乳护士喂奶hd| 久久久久久久久99精品| 极品尤物一区二区| 亚洲欧美日韩一区二区 | 欧美一级电影在线| 性欧美超级视频| 国产色视频一区| 香蕉大人久久国产成人av| 国产一区二区三区四区五区加勒比| 日韩动漫一区| 色噜噜狠狠色综合网| 亚洲欧美网站在线观看| 91九色在线观看视频| 日韩 欧美一区二区三区| 手机av在线网站| 不卡的av网站| 成人在线观看免费高清| 一区二区三区在线播放| 欧美一区免费看| 欧美肥妇毛茸茸| 视频污在线观看| 色爱av美腿丝袜综合粉嫩av| 欧美人动性xxxxz0oz| 日韩av手机在线看| 久久久久亚洲精品中文字幕| 精选一区二区三区四区五区| 欧美mv日韩| 欧美日韩一道本| 狠狠色丁香久久婷婷综合_中| 国产女人18毛片水真多18| 国产精品视频一二三| 国产在线视频99| 欧美三级中文字| 狠狠人妻久久久久久综合麻豆| 亚洲最新av在线网站| 黄页在线观看免费| 国产精品视频一| 国产精品毛片视频| 中文字幕一区二区三区在线乱码| 99精品国产福利在线观看免费| 污污网站在线观看视频| 91视频免费播放| 成年人av电影| 欧美吞精做爰啪啪高潮| 日韩一级片免费| 另类专区欧美制服同性| 成人视屏在线观看| 久久精品日产第一区二区三区| 久久精品青草| 一区二区三区免费播放| 91在线小视频| 久久综合加勒比| 91精品欧美综合在线观看最新| 免费成人av电影| 韩日欧美一区二区| 日韩在线精品强乱中文字幕| 亚洲午夜精品久久| 日韩电影在线一区二区三区| 日韩 中文字幕| 亚洲福利电影网| 精品国产av鲁一鲁一区| 丝袜亚洲另类欧美重口| 蜜桃精品在线| 欧美日本亚洲| 亚洲综合丁香| 一级国产黄色片| 五月天视频一区| 亚洲乱码国产乱码精品精软件| 久久亚洲影音av资源网| 亚洲国产aⅴ精品一区二区三区| 四虎永久国产精品| 日韩高清中文字幕一区| 国产sm调教视频| 色综合av在线| 成人福利在线| 国产精品精品视频一区二区三区| 九九在线精品| 能看的毛片网站| 亚洲国产精品av| 亚洲一线在线观看| 精品国模在线视频| 亚洲一区二区三区久久久| 伊人久久大香线蕉精品| 精品一区二区影视| 欧美精品久久久久久久久46p| 7777精品伊人久久久大香线蕉超级流畅 | 国产成人精选| 五月婷婷综合色| 美女在线观看视频一区二区| 亚洲第一综合网| 欧美自拍偷拍一区| 在线观看黄av| 亚洲自拍另类欧美丝袜| 国产精品v亚洲精品v日韩精品| 国产吃瓜黑料一区二区| 亚洲va欧美va人人爽午夜| 亚洲av成人精品日韩在线播放| 欧美一级视频一区二区| 欧美精品一区二区三区中文字幕| www.国产视频.com| 亚洲一本大道在线| 天天干天天草天天射| 欧洲一区二区视频| 日韩在线观看一区 | 成人日韩在线观看| 一级一片免费播放| 成人久久视频在线观看| 国内自拍视频在线播放| 综合网中文字幕| 日本在线成人| 欧美成人xxxxx| 国产精品免费视频观看| 性生活视频软件| 欧美一区二区.| 99久久.com| 亚洲少妇18p| 欧美视频日韩视频| 欧洲一区二区三区| 日韩欧美一区二区三区四区| 国产精品一区2区| 欧美激情黑白配| 精品国内产的精品视频在线观看| 你懂的在线观看一区二区| 黄色永久免费网站| 午夜欧美视频在线观看| 在线观看黄色av| 久久青青草原|