0
我的應用程序使用HttpURLConnection從網絡下載數據,因此它要求獲得INTERNET權限。在執行網絡操作之前,我應該檢查網絡狀態嗎?
是否也應該檢查設備連接到網絡(通過ConnectivityManager和NetworkInfo)從而增加ACCESS_NETWORK_STATE所請求的權限,或者我應該簡單地嘗試下載數據和處理異常?
Google的Connecting to the Network和Managing Network Usage指南建議開發人員在嘗試執行網絡操作以檢查「更好的用戶體驗」之前檢查網絡狀態,但我記得閱讀教程(目前我無法找到)告訴只要求真正不可避免的權限,不要嚇跑用戶,更好地「自我控制」。
所以,
- 是否有某種關於此最佳實踐的?
- 是否有任何問題沒有問權限和處理異常?
我的意見是,如果你想*做*什麼時候它改變,或者如果你想*改變*取決於國家的東西,你應該只添加額外的權限。例如,如果要在網絡不存在時禁用某項功能(而不是在嘗試通知時)。否則,就像你說的那樣,這只是一個額外的許可來「嚇唬」人們。只是我的意見,但我相信其他人可能會有所不同。 – Geobits