2012-07-05 19 views
6

Tôi đang cố gắng thêm tính năng đồng hồ báo thức trong nền vào ứng dụng tôi đang phát triển.Báo thức iPhone sử dụng thông báo cục bộ lặp lại

Tôi đã đọc lên đối tượng UILocalNotification và việc sử dụng nó cũng như nhận thức được rằng nó bị giới hạn trong 30 giây âm thanh.

Tôi đã nghĩ đến việc lên lịch nhiều thông báo (giả sử 5 trong số đó) cách nhau 30 giây để bắt chước chơi liên tục, nhưng vấn đề với cách tiếp cận này là nếu người dùng truy cập Close, tôi sẽ không thể hủy bất kỳ các thông báo tiếp theo.

Theo như tôi biết, không thể xóa hoặc ẩn nút Close mà không ẩn hoàn toàn thông báo (tức là, đặt thuộc tính alertBody thành Nil). Vì vậy, tôi nghĩ tôi có thể sử dụng thuộc tính repeatInterval để làm cho thông báo bật lên sau mỗi 30 giây, nhưng có vẻ như tôi chỉ có thể đặt khoảng thời gian thành một phút hoặc một giây và không có gì ở giữa.

Tính năng này có nghĩa là cho phép người dùng lựa chọn giữa âm nhạc và tiếng bíp cho âm thanh báo thức; có vẻ như tôi đã tìm được cách để làm tiếng bíp - đặt repeatInterval thành một giây, tạo ra một tiếng bíp thứ hai (cần phải được hẹn giờ để lặp lại rõ ràng) và sử dụng nó làm âm thanh thông báo.

Tuy nhiên, đối với âm nhạc, cách tiếp cận này giới hạn tôi phát 30 giây âm thanh, sau đó là khoảng cách 30 giây, tiếp theo là 30 giây âm thanh, v.v.

Tôi biết rằng không có giải pháp đơn giản nào ở đây, từ việc đọc các bài đăng và tài nguyên khác của tôi; không ứng dụng của bên thứ ba nào có quyền truy cập vào cùng chức năng như đồng hồ báo thức tích hợp sẵn. Tôi hy vọng rằng ai đó đã tìm thấy một cách giải quyết hoặc nghĩ về điều gì đó thực sự thông minh.

CẬP NHẬT: Tôi nhận thấy rằng repeatInterval không giúp tôi trong trường hợp này, vì tôi không thể hủy lặp lại mà không khởi chạy ứng dụng.

Hiện tại, tôi đã quyết định không sử dụng thông báo làm báo thức, nhưng đã thay đổi tính năng này thành lời nhắc (nhiều hơn dọc theo dòng thông báo dự định).

Nếu tôi tìm ra cách để triển khai chức năng báo thức đáng tin cậy, thân thiện với người dùng cho ứng dụng, tôi sẽ cập nhật bài đăng này.

+1

"nhiều thông báo (giả sử 5 trong số đó) cách nhau 30 giây để bắt chước chơi liên tục" - nó sẽ không hoạt động theo cách này vì độ chính xác LocalNotification bị giới hạn trong một phút ... –

+1

Cân nhắc sử dụng thực thi nền trong ứng dụng của bạn . Theo như tôi biết ứng dụng có thể phát nhạc ở chế độ nền. –

+0

Dưới đây là ví dụ về cách người nào đó tạo báo thức nền thông báo cục bộ mà bạn ám chỉ: http://stackoverflow.com/a/4197215/1264925 – sigre

Trả lời

0

Tôi sợ bạn không thể thực hiện được điều này..vị trí như bạn đã nêu nút 'Đóng'. Bạn sẽ không nhận được bất kỳ cuộc gọi nào trong ứng dụng nếu nút Đóng được nhấn. Hơn nữa ngay cả khi bạn hiển thị thông báo sau mỗi 30 giây, thì sẽ có nhiều thông báo trên màn hình mà người dùng phải xem hoặc đóng. Vì vậy, trải nghiệm người dùng sẽ trở nên điên rồ. Tôi khuyên bạn nên làm rõ với người dùng rằng họ không thể đặt báo thức bằng âm thanh tùy chỉnh hơn 30 giây.

+0

Tôi đã đi đến kết luận tương tự, cảm ơn đề xuất của bạn. – bschnur