Lal*_*han 3 android android-networking
我试图在SherlockFragment中检查网络连接,但无法识别getSystemService()方法.
以下是我的代码(来自http://developer.android.com/training/basics/network-ops/connecting.html)
ConnectivityManager connMgr = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
if (networkInfo != null && networkInfo.isConnected()) {
// fetch data
} else {
// display error
}
Run Code Online (Sandbox Code Playgroud)
提前致谢
Tri*_*mon 27
该方法getSystemService()未在片段上定义,因此首先使用该活动getActivity(),例如:
ConnectivityManager connMgr = (ConnectivityManager) getActivity()
.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
if (networkInfo != null && networkInfo.isConnected()) {
// fetch data
} else {
// display error
}
Run Code Online (Sandbox Code Playgroud)
ps:additianal note:如果片段在没有附加到任何活动的情况下存在潜在风险,请检查是否先getActivity()返回null.
干杯!
| 归档时间: |
|
| 查看次数: |
11772 次 |
| 最近记录: |