문제

Google 캘린더 (또는 다른 iCal-Powered Services)에 꽂는 작은 데스크톱 응용 프로그램을 작성하고 이벤트 미리 알림을 표시합니다. 자동으로 ICAL 파일을 자주 실행합니다. 파일 체크섬이 변경된 경우 현재 약속 캐시를 버리고 캘린더를 다시 보냅니다.

Google 캘린더 파일에서는 작동하지 않습니다. 추가 검사에서는 DTSTAMP: 속성 가 변경되었습니다. 특정 캘린더와 연결된 iCal 파일을 다시 다운로드 할 때마다. 따라서 표준 체크섬은 여기에가는 방법이 아닐 수도 있습니다. 내가 고려하는 두 가지 주요 솔루션이 있습니다.

  • outacododicetagcode 선을 가진 원본 파일을 기반으로 체크섬을 계산합니다. (더러운)
  • 캘린더의 섹션을 탐지 한 전체 캘린더 diff 알고리즘을 구현하는 (비싼)

    iCal 형식이 아직 발견되지 않은 다른 단점이 있는지 모르지만 방법 1이 내 문제를 해결할 수 있는지 모르겠습니다. 제한된 테스트는 그것이하는 것을 나타내는 것 같습니다. 한편, 방법 2는 CPU 전력으로 불필요하게 값 비싸다.

    무엇을 제안하겠습니까?

도움이 되었습니까?

해결책

Google 캘린더가 RFC5545의 100 %를 따르는 경우 확실하지만 "수정 시퀀스 내에서 캘린더 구성 요소의 개정 시퀀스 번호를 정의해야합니다."

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top