우리는 사용자가 구독 기반으로 사용하는 응용 프로그램을 설계하고 있습니다. 사용자가 특정 기간 동안 비용을 지불하면 해당 기간 동안 유효 한 영수증이 Google 서버에서 발행됩니다. 이 응용 프로그램은 "오프라인"으로 사용되도록 설계되었으므로 인터넷에 연결되어 서버에서 영수증을 가져옵니다.주기적으로 백그라운드에서 서비스를 실행하십시오.
"오프라인"모드 인 경우 앱에서 사용자가 다시 지불해야 할 때까지 - 유료 기간 # 일 동안 대기합니다. 이를 구현하는 데 문제가 있습니다.
우리는 항상 항상 실행중인 백그라운드 서비스를 사용하려고했습니다. 그러나 https://stackoverflow.com/a/2682130/5753416, http://www.androidguys.com/2009/09/09/diamonds-are-forever-services-are-not/을 읽은 후 AlarmManger를 사용하여 정기적 인 알람을 예약하여 지불을 확인했습니다.
사용자가 시간/날짜를 변경하면 알람에 문제가 발생합니다. 우리는 Intent.ACTION_TIME_CHANGED 및 Intent.ACTION_DATE_CHANGED 브로드 캐스트를 듣고 있지만 /날짜를 설정할 때 브로드 캐스트이 아닙니다.
제 질문은 비슷한 기능을 구현하는 올바른 방법입니다. 모든 조언을 부탁드립니다.
편집 당신이해야 할 일을 하나 개의 솔루션이 있습니다
코드를 공유해주세요. –
어느 부분이 필요합니까? 이 기능은 "한 곳에서"구현되지 않았기 때문에이 질문을드립니다. 하지만 우리는 방송을 청취 할 때 표준적인 것을 사용했습니다. – fuadj
Intent.ACTION_TIME_CHANGED 및 Intent.ACTION_DATE_CHANGED 방송을 청취중인 출처 및 부분 –