2012-07-13 3 views
1

사용자가 설정 한 환경 설정에 따라 동작을 상기시키는 앱을 만들고 있습니다. 시작 날짜와 종료 날짜를 설정할 수 있습니다 (종료 날짜는 선택 사항 임). 그런 다음 그들은 주파수를 설정할 수 있습니다쉬운 처리를위한 UILocalNotifications 저장하기

  • 매일
  • Weekely
  • 마다 1-9 일
  • 마다 1-9 주
  • 달의 특정 일
  • 특정 날짜

이제는 향후 알림 및 미리 알림 목록을 검색하여 UITable에 표시 할 수 있어야합니다. 전망. 그리고 사용자가 알림을 무시하면 (앱에서 미리 알림을 체크하지 않음), 나중에 수학적 계산을 위해이를 추적 할 수 있어야합니다.

처음에는 UITableView가 미리 알림 세트를보고 특정 날짜에 어떤 알림이 실행되는지 알아 내려고했습니다.

이렇게하면 날짜가 많이 걸리므로 사용자가 알림을 무시했는지 알 수 없습니다.

나의 다음 (현재) 아이디어는 데이터베이스 테이블을 저장하고 (다음과 같이) 미리 알림의 한 달 후에 입력하는 것입니다. 그리고 응답하도록 설정되지 않은 모든 행은 무시한다는 것을 의미합니다. 이것은 또한 UITableView를 매우 간단하게 만든다.

더 좋은 방법이 있습니까? 데이터베이스 행을 얼마나 멀리 만들어야합니까? 그들이 리마인더를 변경하면, 아마 행에 대해 DELETE를 호출하고 다시 입력해야 할 것입니다. ID의 관점에서 볼 때이 숫자가 정말 높을까요?

reminderLogs 
------------- 
id 
reminderID 
actionReceived 
timestampShould 
timestampTaken 
comments 

답변

1

핵심 데이터를 사용하기에 좋은 소리입니다. 별표에 별다른 어려움이 없을 수 있습니다. 특히 익숙하지 않은 경우에는 그렇습니다. 일단 쿼리하면 상대적으로 쉽게 쿼리 할 수있는 영구 데이터 저장소를 갖게됩니다. 또한 저장된 객체의 속성을 삭제 및 다시 작성하지 않고 변경할 수 있으므로 사용자가 작업을 추가하거나 수정하는 경우 DB에 레코드를 추가하거나 수정하는 것이 쉽습니다. 목록을 표시하거나 저장된 데이터에 대한 계산을 실행해야하는 경우 올바른 쿼리를 통해 알아야 할 모든 것을 얻을 수 있습니다.

웹에 수많은 핵심 데이터 자습서가 있지만, Apple's example으로 시작할 수도 있습니다.

+0

핵심 데이터에 대해 생각했지만 결국 Android 및 WP7에서 앱을 만들고 싶습니다. 그렇기 때문에 sqlite를 사용하는 것이 더 쉽지 않을까요? – Flipper

1

처음으로 Husker Jeff와 Core Data 사용에 대한 그의 제안에 +1. 통지 규칙을 작성하는 방법은 지속성을 유지하는 방법이어야합니다.

저는 현재 반복적 인 통지를 담당하는 서버 측 구성 요소로 작업 중입니다. 반복되는 이벤트 유형에 대한 설명을 보면 UILocalNotification은 repeatInterval 속성 만 사용할 수있을만큼 유연하지 않습니다.

것은 난 강력하게 다음 읽기 두시길 것 :

  1. Martin Fowler's Pattern for recurring events.
  2. IceCube, a reccuring events library developed in Ruby for dealing with recurring events and temporal expressions. It should give you a good idea for how to implement your Object Graph.
  3. Stack Overflow topic on building an iCal friendly DB schema.

내가 가능한 UILocalNotification의로부터, repeatInterval에 의존 건의 할 것입니다. weeklyRule 및 dailyRule과 같은 항목을 UILocalNotification의 반복 간격에 위임하려고합니다.

매 n 일마다, 매주 n 번째와 같은 규칙의 경우 자신의 임시 표현식과 규칙을 만들어야 할 수 있습니다.

관련 문제