2013-12-12 29 views
5

Tôi đang cố gắng triển khai ứng dụng có hệ thống thông báo cục bộ. Hệ thống sẽ hủy một số thông báo không cần thiết. System.scheduleNotification hoạt động tốt (nó tạo ra các thông báo và chúng hoạt động tốt) nhưng nó trả về nil (Nó phải trả về một ID). Vì vậy, tôi không thể hủy bất kỳ thông báo nào bằng id thông báo.Corona, system.scheduleNotification không hoạt động đúng cách

Thực ra mã tôi sử dụng rất đơn giản. Bất kỳ trợ giúp sẽ là hữu ích ...

local nextRefreshTime = 60 -- Not always 60, its just an example 
local options = { 
    alert = "Some text here.", 
    badge = (native.getProperty("applicationIconBadgeNumber") or 0) + 1, 
} 

notifications[#notifications+1] = system.scheduleNotification(nextRefreshTime, options) 
print(notifications[#notifications]) -- Prints nil !?! 
-- Another example (test) 
print(system.scheduleNotification(nextRefreshTime, options)) -- Also prints nil !?! 

Tái bút: Tôi cũng đã cố gắng system.scheduleNotification với utcTime tranh cãi.

Trả lời

2

Bạn đã không đăng tất cả mã của mình để tôi không biết mã của bạn đang làm gì. Hãy chắc chắn rằng trong các tùy chọn cảnh báo của bạn là một chuỗi. Hình ảnh trông giống như sau:

local options = { 
    alert = "Wake up!", 
    badge = 2, 
} 

Hãy nhớ rằng mã của bạn đang nói rằng hệ thống của bạn sẽ thêm 1 vào bảng thông báo. Ngay bây giờ system.scheduleNotification không phải là một string, đó là một bảng, vì vậy khi bạn cố gắng để print(notifications[#notification]) nó sẽ có ý nghĩa rằng nó in nil. Tôi nghĩ rằng bạn sẽ phải in ra notification[alert] nhưng tôi không chắc chắn. Kiểm tra liên kết này: http://lua-users.org/wiki/TablesTutorial

3

Bạn đang xây dựng ứng dụng cho corona simulator? Sau đó, nó sẽ không hoạt động. Xây dựng nó cho Xcode simulator để kiểm tra thông báo địa phương. Một dự án mẫu (từ corona Sample Code) hình ảnh đầu ra được hiển thị dưới đây:

enter image description here

Và mã là:

local options = { 
    alert = "Wake up!", 
    badge = 1, 
    sound = "alarm.caf", 
    custom = { msg = "bar" } 
} 

notificationID = system.scheduleNotification(time, options) 

local displayText = "Notification using Time: " .. tostring(notificationID) 
print(displayText) -- It will print the user data 

Giữ Mã hóa .............. :)

+0

Tôi đã thử trên thiết bị và cả trình mô phỏng xcode. Tôi sẽ thử ví dụ này. Tôi giả sử nó trên trang web corona. Cảm ơn bạn đã trả lời. –

Các vấn đề liên quan