2013-12-14 33 views
1

我有幾個用戶報告說應用程序無法連接到互聯網,但他們發誓他們沒有爲應用程序啓用任何數據限制。這僅僅發生在Android 4.2.2上,我已經讓用戶確認他們的手機上有互聯網接入,並且他們可以手動連接到瀏覽器中的URL。有什麼方法可以找出什麼阻止了我的應用的互聯網訪問?

編輯: 的應用程序有一個定期的背景互聯網下載(XML文件),而且在應用手動刷新按鈕。所有用戶的後臺刷新失敗,但手動刷新按鈕至少適用於一個用戶。而且我測試的瀏覽器中的URL正是該應用在後臺執行的操作。

那麼,有什麼可能阻止我的應用程序的互聯網連接?有沒有什麼辦法可以在運行時確定我的應用程序是否有數據限制(或全局在設備上)?

+0

「他們可以手動連接到瀏覽器中的URL」 - 這是你試圖使用的URL,或者至少是同一個服務器?你能否描述一下你的互聯網訪問的特點,比如你是否試圖在前臺或者後臺做這些事情? – CommonsWare

+0

我使用您所要求的信息更新了OP – user496854

+0

有問題的設備是否有共同點,例如它們全部來自SONY? – CommonsWare

回答

1

那麼,有什麼可能阻止我的應用程序的互聯網連接?

Android在某些版本中有「限制後臺數據」選項。您可以在設置>數據使用> ...(溢出)>「限制背景數據」中找到它。

一些製造商進一步阻止應用程序在後臺運行,例如SONY的STAMINA模式。其他製造商可能會有類似的調整。

是否有任何方式來確定在運行時是否有任何數據限制爲我的應用程序(或設備上的全局)?

對於Android的「限制後臺數據」選項,在ConnectivityManagergetActiveNetworkInfo()應該當你不能在後臺做工作報告null

SONY已經決定添加一些代碼行以允許開發人員查明STAMINA模式是否被激活,顯然是打字太多。

+0

用戶說背景數據不受限制。那麼,沒有別的可能呢? – user496854

+0

@ user496854:除了你的代碼只是在背景模式下運行,沒有別的東西可以想象。 – CommonsWare

+0

@CommonsWare自從Android 6以來,限制節電模式如何?是第二個選項,我認爲 – nAkhmedov

相關問題