回答
您可以嘗試在此目的下使用Alarm API。遵循以下步驟:
- 首先創建一個監視應用程序和一個服務應用程序。打包這兩個應用程序和構建。請通過this link來做包裝。
現在在watchface應用程序中使用下面的代碼片段在特定時間後觸發警報,在您的情況下爲1小時。
bool init_alert(){ int ret; int DELAY = 3; int REMIND = 3600; //alert after every 1hr. int alarm_id; app_control_h app_control = NULL; ret = app_control_create(&app_control); ret = app_control_set_operation(app_control, APP_CONTROL_OPERATION_DEFAULT); ret = app_control_set_app_id(app_control, "Service_App_ID"); ret = alarm_schedule_after_delay(app_control, DELAY, REMIND, &alarm_id); return true;}
使用下面的權限在錶盤的應用程序清單文件:服務應用程序的
現在service_app_control()函數,創建使用下面的代碼的警告:
void service_app_control(app_control_h app_control, void *data){ dlog_print(DLOG_INFO, LOG_TAG, "Hourly Alert Here"); notification = notification_create(NOTIFICATION_TYPE_NOTI); int ret =0; ret = notification_set_text(notification, NOTIFICATION_TEXT_TYPE_TITLE, "Hourly Alert!!", NULL, NOTIFICATION_VARIABLE_TYPE_NONE); ret = notification_post(notification); notification_free(notification); return;}
使用下面的特權服務的應用程序清單文件:
http://tizen.org/privilege/notification
要知道詳細情況,請通過this link。
編輯:1 您可能會發現此問題的原因爲this link。請通過備註和另請參閱部分。我以前發佈了2.3.2版的答案。這就是爲什麼我沒有得到任何錯誤。 請按照下面的方式。在我的情況下,它適用於3.0版本。
步驟1:取一個計數器,首先將其設置爲0,並且每對這樣秒時鐘給出0時間增加它:
watch_time_get_second(watch_time, &second);
if(second == 0) count++;
步驟2:現在,檢查計數器價值,如果它等於你的要求的價值,例如如果你想每3分鐘間隔後的警報,那麼你可以檢查它是否等於3,之後創建這樣一個通知:
if(count == 3){
dlog_print(DLOG_INFO, LOG_TAG, "Hourly Alert");
notification = notification_create(NOTIFICATION_TYPE_NOTI);
int ret =0;
ret = notification_set_text(notification, NOTIFICATION_TEXT_TYPE_TITLE, "Hourly Alert!!",
NULL, NOTIFICATION_VARIABLE_TYPE_NONE);
ret = notification_post(notification);
notification_free(notification);
count = 0;
}
最後,計數器設置爲0,做好準備來算爲下一個時間間隔。下文中找到完整的代碼結構有很好的瞭解:
#include <notification.h>
static notification_h notification = NULL;
int count = 0;
static void
update_watch(appdata_s *ad, watch_time_h watch_time, int ambient)
{
char watch_text[TEXT_BUF_SIZE];
int hour24, minute, second;
if (watch_time == NULL)
return;
watch_time_get_hour24(watch_time, &hour24);
watch_time_get_minute(watch_time, &minute);
watch_time_get_second(watch_time, &second);
if (!ambient) {
if(second == 0) count++;
if(count == 3){
dlog_print(DLOG_INFO, LOG_TAG, "Hourly Alert");
notification = notification_create(NOTIFICATION_TYPE_NOTI);
int ret =0;
ret = notification_set_text(notification, NOTIFICATION_TEXT_TYPE_TITLE, "Hourly Alert!!",
NULL, NOTIFICATION_VARIABLE_TYPE_NONE);
ret = notification_post(notification);
notification_free(notification);
count = 0;
}
dlog_print(DLOG_INFO, LOG_TAG, "cnt = %d", count);
snprintf(watch_text, TEXT_BUF_SIZE, "<align=center>Hello<br/>%02d:%02d:%02d</align>",
hour24, minute, second);
} else {
snprintf(watch_text, TEXT_BUF_SIZE, "<align=center>Hello Watch<br/>%02d:%02d</align>",
hour24, minute);
}
elm_object_text_set(ad->label, watch_text);
}
N.B:不要忘了添加權限的通知。
謝謝!但是** alarm_schedule_after_delay()**返回** ALARM_ERROR_NOT_PERMITTED_APP **,這表示 - 如果app_control不是UI應用程序,則返回ALARM_ERROR_NOT_PERMITTED_APP._([description](https://developer.tizen.org/ko/development/) API-引用/本地的應用程序?重定向=/DEV-引導/ 2.4/org.tizen.native.mobile.apireference/group__CAPI__ALARM__MODULE.html#ga83e440e25f14588b9bf2a6193cf6653c))。如何解決它? – Gregory
請使用您的代碼編輯帖子。 –
- 1. 將Android應用程序的通知推送到Gear 2(Tizen)?
- 2. Tizen可穿戴Web應用程序在Samsung Gear S3中某個時間停止運行後
- 3. 背景上的時鐘應用程序「無警報」消息
- 4. tizen/javascript背景操作 - 表面小時報警
- 5. 警報用戶每24小時更新應用程序啓動時的數據
- 6. Java時鐘報警
- 7. Tizen Web /原生應用程序表單驗證
- 8. AlarmManager警報每30分鐘而不是每天警報
- 9. 無法完成顯示警報的反應原生REDX應用程序
- 10. 齒輪S3上的Tizen可以在Web應用程序中調用GoogleMaps Api
- 11. 如何每週從我的應用程序通知用戶警報聲音?
- 12. 將Tizen應用程序部署到Gear S2:使用非信任證書
- 13. 獲取報警應用程序中保存的所有報警
- 14. 我們如何在每日警報中打開我的應用程序。我使用pushregistry作爲每日鬧鐘
- 15. 應用程序更新時運行警報會發生什麼?
- 16. 當我使用報警應用程序時,額外保留了一個鬧鐘
- 17. 是否需要在警報應用程序中觸發警報?
- 18. 報警聲明提供錯誤的UWP應用程序?
- 19. 如何在Tizen原生應用程序中設置背景圖片
- 20. 如何斷火報警每30分鐘
- 21. 獲取警報NewRelic的應用程序時沒有報告
- 22. 在iPhone時鐘應用程序「報警」選項卡上拖放陰影
- 23. Android開發人員可以訪問系統時鐘/報警應用程序嗎?
- 24. 我的Tizen應用程序在點擊時閃爍
- 25. 操作系統從Tizen 2.3.2.3升級到Tizen 3.0.0.1後Gear S3中的簽名錯誤
- 26. 應用程序的警報風格
- 27. 報警管理使用時鐘
- 28. EC2小時使用警報
- 29. 使用未聲明的錯誤:ViewController.m中的警報錯誤--IOS應用程序
- 30. 應用程序使用報警管理
您是否在表格應用程序的tizen-manifest.xml文件中添加了以下行? http:// tizen。org/privilege/alarm.get http://tizen.org/privilege/alarm.set –
是的,我做過了。 這些行位於watchface應用程序的tizen-manifest.xml中。 – Gregory
用清單文件中的代碼編輯問題。我沒有得到這樣的錯誤。我猜你錯過了任何步驟。 –