0

Я разработал приложение для клиента, в котором пользователь может установить локальные уведомления. Проблема заключается в том, когда пользователь пытается удалить будильник/уведомление из своего списка, уведомление все еще срабатывает (для повторения сигналов тревоги). Я попытался отменить все уведомления при загрузке, а затем снова установить каждое уведомление, а также другие методы, но ничего не работает. Есть ли этому решение? Кто-нибудь еще испытал это? Это должно быть довольно простой задачей.Не удается удалить локальные уведомления в Appcelerator Titanium для iOS

Вот код, я использую, чтобы удалить уведомления от сервера БД, а также внутри локального хранилища уведомлений телефона:

tbl.addEventListener('delete',function(e){ 
      var rowIndex = e.rowIndex; 
      tbl.deleteRow(rowIndex); 

      var appReq = Ti.Network.createHTTPClient(); 
       appReq.open('POST', app.appurl + 'actions.php'); 
       //LOAD 
       appReq.onload = function(){ 
        Ti.API.info(this.responseText); 
        var appResp = JSON.parse(this.responseText);//JSON resp 

        if(appResp.rsp == 'OK') 
        { 
         app.alarms[e.rowData.cancel_id].cancel(); 
         view.getAlarms(); 

        }else 
        { 
         alert(appResp.msg); 
        } 
       }; 

       //ERROR 
       appReq.onerror = function(e){ 
        Ti.API.info(e.error); 
       }; 

       //DATA 
       var data = { 
        id:e.rowData.id, 
        action:'removealarm' 
       }; 

       //SEND 
       Ti.API.info('sending: ' + JSON.stringify(data)); 
       appReq.send(data); 
     }); 

** Примечание: Этот код, казалось, работал для моего устройства, но а не клиентом, мне просто нужно убедиться, что это будет правильный метод.

ответ

1

Чтобы отменить все ожидающие уведомления уведомления, вызовите метод Ti.App.iOS.cancelAllLocalNotifications().

+0

Я делаю это, когда я изначально запускаю приложение перед загрузкой всех тревог/уведомлений. Моя проблема заключается в удалении одного уведомления. –

Смежные вопросы