Нативное приложение, Alarm API не работает (пример проекта Tizen Studio) - PullRequest
0 голосов
/ 04 апреля 2019

Я пишу приложение, функциональность которого заключается в том, чтобы активировать сигнал тревоги с задержкой в ​​несколько секунд, менеджер сигналов тревоги в соответствии с журналами активируется и устанавливает сигнал тревоги, однако по истечении определенного времени ничего не происходит.

Предполагая, что я делаю что-то не так, я попытался запустить пример проекта из библиотеки Tizen Studio, этот проект, запущенный на моих Galaxy Watch, также не может запустить какой-либо сигнал тревоги.

Код, который я использую в своем приложении, чтобы установить будильник на 10 секунд впереди:

app_control_h app_control = NULL;
app_control_create(&app_control);
app_control_set_operation(app_control, APP_CONTROL_OPERATION_MAIN);
app_control_set_app_id (app_control, "org.example.pushreceiver");
int alarm_id = 1;
int ret1 = 0;
struct tm date;
ret1 = alarm_get_current_time(&date);
date.tm_sec += 10;
ret1 = alarm_schedule_once_at_date(app_control, &date, &alarm_id);

Журналы, когда будильник установлен:

04-04 19:37:45.015 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __alarm_next_duetime_once(155) > Final due_time = 1554399495, Thu Apr  4 19:38:15 2019
04-04 19:37:45.303 : Error / WMS ( 3709 : 3709 ) : wms_package_manager.c: _wms_pkg_mgr_cb_watch_app_filter(843) > PKG[org.example.alarm], App[alarm], Version[2.3.2]
04-04 19:37:45.743 : Error / WMS ( 3709 : 3709 ) : wms_package_manager.c: _wms_pkg_mgr_cb_watch_app_filter(843) > PKG[com.samsung.alarm-solis], App[Alarm], Version[1.1.57]
04-04 19:37:45.979 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(447736985) is OVER.
04-04 19:37:45.979 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(573079649) is OVER.
04-04 19:37:45.979 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(783848223) is OVER.
04-04 19:37:45.979 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(1694750646) is OVER.
04-04 19:37:45.979 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(2142377266) is OVER.

Журналы, когда должен срабатывать сигнал тревоги:

04-04 19:37:47.143 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(447736985) is OVER.
04-04 19:37:47.143 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(573079649) is OVER.
04-04 19:37:47.143 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(783848223) is OVER.
04-04 19:37:47.143 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(1694750646) is OVER.
04-04 19:37:47.143 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(2142377266) is OVER.
04-04 19:37:47.151 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __alarm_next_duetime_once(155) > Final due_time = 1554399482, Thu Apr  4 19:38:02 2019
04-04 19:37:51.851 : Warning / ALARM_MANAGER ( 5012 : 5012 ) : alarm-lib.c: alarmmgr_add_alarm_appsvc_with_localtime(874) > start(4-4-2019, 19:37:61), end(0-0-0), repeat(0), interval(0), type(0)
04-04 19:37:51.919 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __alarm_next_duetime_once(208) > Final due_time = 1554399481, Thu Apr  4 19:38:01 2019
04-04 19:37:51.943 : Warning / ALARM_MANAGER ( 5012 : 5012 ) : alarm-lib.c: __alarmmgr_init_appsvc(737) > alarm was already initialized.
04-04 19:38:01.091 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager.c: __alarm_expired(1976) > Unable to run app svc
04-04 19:38:01.095 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(447736985) is OVER.
04-04 19:38:01.095 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(573079649) is OVER.
04-04 19:38:01.095 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(783848223) is OVER.
04-04 19:38:01.095 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(1694750646) is OVER.
04-04 19:38:01.095 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(2142377266) is OVER.
04-04 19:38:02.015 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(447736985) is OVER.
04-04 19:38:02.015 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(573079649) is OVER.
04-04 19:38:02.015 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(783848223) is OVER.
04-04 19:38:02.015 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(1694750646) is OVER.
04-04 19:38:02.015 : Warning / ALARM_MANAGER ( 2669 : 2669 ) : alarm-manager-schedule.c: __find_next_alarm_to_be_scheduled(536) > The duetime of alarm(2142377266) is OVER.
04-04 19:38:02.031 : Warning / ALARM_MANAGER ( 2900 : 2900 ) : alarm-lib.c: __handle_expiry_method_call(221) > [alarm-lib] Call expired callback
04-04 19:38:02.031 : Info / PUSHD ( 2900 : 2900 ) : polling.c: _alarm_connection_lifetime_cb(930) > epoch_start[1554399482]
04-04 19:38:02.031 : Error / PUSHD ( 2900 : 2900 ) : spp.c: _clear_alarm(465) > No alarm to clear
04-04 19:38:02.031 : Error / PUSHD ( 2900 : 2900 ) : spp.c: _clear_alarm(465) > No alarm to clear
04-04 19:38:02.043 : Info / PUSHD ( 2900 : 2900 ) : polling.c: polling_stop_alarm(1027) > epoch_start[1554399482]
04-04 19:38:02.043 : Info / PUSHD ( 2900 : 2900 ) : polling.c: _clear_alarm(969) > epoch_start[1554399482]

Я вообще не могу использовать API сигнализации даже с примером проекта Tizen Studio, сейчас я попытался изменить версию API проекта с 4.0 на 2.3.2 безрезультатно. У кого-нибудь есть рабочий родной проект будильника в качестве образца?

1 Ответ

1 голос
/ 17 мая 2019

ваш код выглядит отлично.Я проверил ваш код с помощью собственного удаленного приложения и воспроизвел ваш сценарий.Проблема в том, что ваше приложение, вероятно, не имеет привилегии "http://tizen.org/privilege/appmanager.launch".

. Проверьте журналы в среде безопасности CYNARA:

sdb dlog AMD_CYNARA_CORE:V

для

E/AMD_CYNARA_CORE( 2492): amd_cynara_core.c: __cynara_simple_checker(258) > cynara denied (http://tizen.org/privilege/appmanager.launch|(null)|(null)|(null))

Когда я добавил упомянутую привилегию к приложению, ваш код работал хорошо. Пожалуйста, проверьте с вашим приложением.

...