В общем, мой вопрос - как заставить фоновую службу запускать каждый «ИНТЕРВАЛ», а не получать сообщение ANR (пытался создать службу, вызываемую из alarmManager, которая запускает поток для выполнения своей работы)?
Спасибо за любую помощь!
Более конкретно:
Я делаю приложение, похожее на DropBox, - делаю локальную папку доступной для других телефонов Android.
Это приложение должно работать в фоновом режиме.
Он также должен запускаться через определенные промежутки времени, чтобы проверить, созданы ли какие-либо новые данные в локальном каталоге для загрузки их на какой-либо сервер.
Мое приложение в целом выполняет следующую последовательность в PsudoCode:
1) AlarmManager.setInexactRepeating(MySerVice)
2) (when the service is being called) DecideWhichFileToUploadOrDownload()
3) UploadNewFiles() DownloadNewFiles()
Я знаю, что проблема связана со стадией 3, после загрузки / выгрузки, которая занимает более 10 секунд, я получаю сообщение ANR (или мое приложение уничтожается), если выгрузка / загрузка короче, чем 10 секунд, чем все работает просто отлично.
Я пытался создать поток, который будет выполнять загрузку / выгрузку, но как только Служба будет завершена, Android уничтожит мою тему.