2014-06-18 3 views
2

Android 캘린더 제공 업체를 통해 캘린더를 지원하는 앱을 작성했습니다. 내 앱 업데이트에 이미 새 이벤트로 만든 캘린더를 추가하고 싶습니다.

지금은 캘린더를 만들고 이벤트를 추가 할 수 있습니다. 내가 직면 한 문제는 앱이 제거 될 때 캘린더를 삭제할 수 없다는 것입니다..

android.intent.action.PACKAGE_REMOVED 방송에 대해 읽었습니다.하지만 내 방송을 잡지 못합니다. 캘린더가 로컬로 생성되고 동기화되지 않습니다. 또한 API 10을 지원하는 앱을 작성 중입니다.앱 제거시 Android 캘린더 삭제

+0

나는이 문제를보고 있지만 이것을 삭제할 수있는 방법을 찾지 못했습니다. 캘린더 항목은 일반 응용 프로그램 데이터를 사용하여 설정에서 삭제되지 않습니다. –

+3

* 귀하의 * 달력이 아닙니다. * 사용자의 * 달력이므로 남아 있습니다. 외부 저장소의 파일을 공용 디렉토리 (예 :'Environment.DIRECTORY_PHOTOS')에 저장하는 것과 다릅니다. – CommonsWare

+0

@CommonsWare, 기존 캘린더에 일정을 추가하지 않습니다. 하지만, 내 앱으로 만든 캘린더가 사용자의 소유가되기 때문에 불가능하다고 제안 하시겠습니까? – eslamb

답변

0

완벽한 클라이언트 측 솔루션으로는 불가능합니다. 앱이 자체 제거 방송을 수신 대기 할 수 없습니다. 앱에서

  1. :

    나는 이것이 당신이 그러나 단지 재미를 위해 찾고 그리고 더 많은 작품을하는지 ... 당신은 정말이 기능을 필요로하는 경우, 당신이 뭔가를 할 수없는 것을 알고 OAuth 액세스 권한을 요청하여 특정 계정에 대한 사용자의 Google 캘린더를 수정할 수 있습니다. 액세스/새로 고침 토큰을 서버 측에 저장하십시오.

  2. 가끔씩 서버에 ping을 보내거나 서버 측의 푸시를 사용하여 앱을 ping하고 아직 설치되어 있는지 확인하십시오.
  3. 앱이 설치되어 있지 않은 경우 서버에서 사용자의 Google 캘린더를 편집하여 앱에서 만든 이벤트를 삭제하도록합니다. 자신의 OAuth 액세스 권한을 취소하고 서버 측에 저장 한 토큰 또는 기타 사용자 관련 정보를 삭제하는 것이 좋습니다.
관련 문제