2013-12-14 1 views
1

У меня есть несколько пользователей, сообщивших, что приложение не может подключиться к Интернету, но они клянутся, что не включили никаких ограничений на данные для приложения. Это происходит только на Android 4.2.2, и у меня есть пользователи, которые подтверждают, что у них есть доступ в Интернет на своих телефонах, и они могут вручную подключаться к URL-адресу в браузере.Есть ли способ узнать, что блокирует доступ к Интернету моего приложения?

Edit: Приложение имеет регулярно запланированный фон интернет скачать (файл XML), но также имеет кнопку ручного обновления в приложении. Обновление фона не работает для всех пользователей, но кнопка обновления вручную работает хотя бы для одного пользователя. И URL-адрес в браузере, который у меня был с ними, - это именно то, что приложение делает в фоновом режиме.

Итак, что может быть заблокировано подключением к Интернету моего приложения? И есть ли способ определить во время выполнения, если есть какие-либо ограничения на данные для моего приложения (или глобально на устройстве)?

+0

«они могут вручную подключаться к URL-адресу в браузере» - это тот же URL-адрес, который вы пытаетесь использовать, или, по крайней мере, тот же сервер? Можете ли вы немного описать характеристики вашего доступа к Интернету, например, пытаетесь ли вы сделать это на переднем плане или на заднем плане? – CommonsWare

+0

Я обновил OP с запрошенной вами информацией – user496854

+0

Есть ли какие-либо общие черты в устройствах, которые имеют проблемы, например, возможно, все они из SONY? – CommonsWare

ответ

1

Итак, что могло бы блокировать подключение к Интернету моего приложения?

В некоторых версиях у Android есть опция «ограничить исходные данные». Вы можете найти его в настройках> Использование данных> ... (переполнение)> «Ограничить исходные данные».

Некоторые производители идут дальше и блокируют запуск приложений в фоновом режиме, например, в режиме STAMINA от SONY. Другие производители могут иметь схожие настройки.

И есть ли способ определить во время выполнения, если есть какие-либо ограничения на данные для моего приложения (или на глобальном уровне на устройстве)?

для андроида «ограничить фоновые данные» вариант, getActiveNetworkInfo() на ConnectivityManager должен сообщить null, когда вы не можете сделать работу в фоновом режиме.

SONY решила добавить несколько строк кода, чтобы разработчики могли узнать, включен ли режим STAMINA, слишком много типизации.

+0

Пользователь говорит, что фоновые данные не ограничены. Значит, больше ничего не может быть? – user496854

+0

@ user496854: Нет ничего другого, о котором я могу думать, кроме вашего кода, который просто не работает в фоновом режиме. – CommonsWare

+0

@CommonsWare Как насчет режима экономии батареи для ограничения с Android 6? это второй вариант, я думаю – nAkhmedov

Смежные вопросы