iOS에서 배경을 감추는 데 문제가 있습니다. 먼저, 간략한 설명자를 보내 드리겠습니다.Xamarin.iOS로 iOS에서 백 그라운이션 (C#) : 어떤 방법을 사용해야합니까?
저는 유틸리티 찾기 티켓을 받고 배포 할 수있는 직장 관리 회사에서 일하고 있습니다. 사용자는 서버에서 티켓을 다운로드하고 서버에서 작업 한 내용을 서버로 다시 보낼 수 있습니다. 다운로드 된 티켓은 로컬 SQLite 데이터베이스에 저장되며 사용자가 작성한 응답은 로컬 SQLite 데이터베이스에 저장됩니다. 우리의 서버에서
- 다운로드 티켓을 로컬 SQLite 데이터베이스에 "티켓"
- 을 확인 : 내 동료는 표를 다운로드하고 다음과 같이 응답입니다 업로드 C# 및 자신의 지능형 프로세스 자 마린의 안드로이드 응용 프로그램을 작성 만든 응답이있는 경우
- 을 만든 응답이있는 경우 로컬 "응답"SQLite 데이터베이스는
- 기다립니다 오분 우리의 서버로 보내 볼 수
- 반복
사용자는 처음에 일괄 처리 티켓을 다운로드하여 처리 할 수 있습니다. 사용자가 인터넷을 사용하지 않는 동안이 프로세스를 실행하면 아무 일도 일어나지 않으며 타이머가 재설정됩니다. 이 프로세스를 통해 사용자는 인터넷 없이도 티켓에 응답 할 수 있고 인터넷에 연결될 때마다 응답을 업로드하고 새 티켓을 다운로드 할 수 있습니다.
내 문제는 iOS에서 backgrounding이 Android보다 훨씬 제한적이라는 것입니다. 백그라운드 가져 오기가 있고 푸시 알림이 있습니다. 백그라운드 가져 오기를 사용하면 시스템에서 PerformFetch
메서드를 실행하는 데 "최적의 기회를 계산합니다"라는 메시지가 표시되며 필요한 5 분 타이머가 적절하지 않습니다. 푸시 알림을 사용하면 사용자가 인터넷을 사용하지 않으면 푸시 알림을받지 않습니다.
위에서 설명한대로 5 분 타이머를 설정하고 프로세스가 실행되면 새로운 티켓이 있는지 확인하고 새로운 티켓이 있으면 새로운 응답을 보내고 싶습니다. 하지만 iOS에서 역행하는 제한적인 특성으로 인해 그렇게 할 수 없습니다.
제안 사항? 그들은 감사 할 가치가 있습니다.
감사합니다.