2016-06-09 6 views
0

나는 코로나에서 응용 프로그램을 시작한 후 60 초 후에 알림을 표시하는 코드가 있습니다. 그것은 다음과 같습니다코로나 SDK - 반복 알림

local notifications = require("plugin.notifications") 
-- Set up notification options 
local notificationOptions = { 
    alert = "Wake up!", 
    badge = 2, 
    sound = "alarm.caf", 
    custom = { foo = "bar" } 
} 
local notification1 = notifications.scheduleNotification(60, notificationOptions) 

나는, 그러나,이 주기적으로 만드는 방법을 찾을 수 없습니다. 예를 들어, 1 분에 한 번, 매 시간에 한 번, 특정 시간에 하루에 한 번 등

어떻게 할 수 있습니까?

감사합니다.

감사합니다, 세르반

답변

1

나는 당신이 루프에서 (1 시간마다 분 동안) 같은 것을이 실행 필요가 있다고 생각 :

local notificationTable = []  
    for i=1,60 do 
    local time = 60*i 
    local handle = notifications.scheduleNotification(time, notificationOptions) 
    notificationTable[time] = handle 
    end 

참고 : 코드 테스트에 대한되지 않는다 배열은 거기에 다른, 더 좋은 방법이 될 수도 있지만 이것은 당신에게 아이디어를 줄 것입니다. 특정 시간 동안 지금부터 초 단위 시간 대신 UTC 시간을 사용해야합니다.

통지를 전달할 UTC (Coordinated Universal Time)를 나타내는 테이블. 이 테이블에는 os.date ("! * t")가 반환 한 것과 동일한 속성이 포함되어야합니다. 일반적인 함정은 "! * t"대신 "* t"를 전달하여 UTC 시간 대신 현재 시간대에서 주어진 시간을 얻는 것입니다.

https://docs.coronalabs.com/daily/plugin/notifications/scheduleNotification.html

도움이되기를 바랍니다

.

+0

예, 도움이됩니다. 반복하지 않기를 바랬는데 특정 알림을 취소하는 것이 더 어렵 기 때문입니다. –

+0

모든 알림의 핸들을 포함하는 테이블을 만들 수 있습니다. 또한 키가 시간이고 값이 핸들 인 광고 키 값 쌍을 사용할 수 있으므로 시간별로 알림을 취소 할 수 있습니다.이를 반영하여 답변을 업데이트합니다. – FelixB

+0

좋은 아이디어. 감사. 그게 내가 원한거야 - 개별 알림을 취소하고 전부는 취소하지 마라. –