【发布时间】:2018-01-24 04:38:35
【问题描述】:
我想检查我何时连接到服务器并执行此操作,我正在使用我在互联网上找到的这段代码,我不知道如何实现它,如何显示警报对话框或任何类型的警告当我没有连接时。任何帮助,将不胜感激!
代码:
public boolean isConnectedToServer(String url, int timeout) {
try {
URL myUrl = new URL(url);
URLConnection connection = myUrl.openConnection();
connection.setConnectTimeout(timeout);
connection.connect();
return true;
} catch (Exception e) {
// Handle your exceptions
return false;
}
}
LOGCAT:
FATAL EXCEPTION: main
Process: com.example.lupitagarcia.yosoyvallarta, PID: 11573
java.lang.NullPointerException: Attempt to invoke virtual method 'int java.util.ArrayList.size()' on a null object reference
at com.example.lupitagarcia.yosoyvallarta.Reportes.onMapReady(Reportes.java:195)
at com.google.android.gms.maps.MapView$zza$1.zza(Unknown Source)
at com.google.android.gms.maps.internal.zzt$zza.onTransact(Unknown Source)
at android.os.Binder.transact(Binder.java:387)
at er.b(:com.google.android.gms.DynamiteModulesB@11951434:20)
at com.google.android.gms.maps.internal.bf.a(:com.google.android.gms.DynamiteModulesB@11951434:5)
at com.google.maps.api.android.lib6.impl.bc.run(:com.google.android.gms.DynamiteModulesB@11951434:5)
at android.os.Handler.handleCallback(Handler.java:739)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:148)
at android.app.ActivityThread.main(ActivityThread.java:7406)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1230)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1120)
这是它使用 PHP 从数据库中检索信息的代码,也是 catlog 将我发送到的代码 代码:
ArrayList<HashMap<String, String>> location = null;
String url = "http://app/get.php";
try {
JSONArray data = new JSONArray(getHttpGet(url));
location = new ArrayList<HashMap<String, String>>();
HashMap<String, String> map;
for (int i = 0; i < data.length(); i++) {
JSONObject c = data.getJSONObject(i);
map = new HashMap<String, String>();
map.put("id", c.getString("id"));
map.put("campo_latitud", c.getString("campo_latitud"));
map.put("campo_longitud", c.getString("campo_longitud"));
map.put("campo_categoria", c.getString("campo_categoria"));
map.put("campo_estado", c.getString("campo_estado"));
location.add(map);
}
} catch (JSONException e) {
e.printStackTrace();
}
String campouno = "";
if (!TextUtils.isEmpty(campouno)) {
double campo_latitud = Double.parseDouble(campouno);
}
String campodos = "";
if (!TextUtils.isEmpty(campodos)) {
double campo_longitud = Double.parseDouble(campodos);
}
for (int i = 0; i < location.size(); i++) {
if (!TextUtils.isEmpty(location.get(i).get("campo_latitud").toString()) && !TextUtils.isEmpty(location.get(i).get("campo_longitud").toString())) {
campo_latitud = Double.parseDouble(location.get(i).get("campo_latitud").toString());
campo_longitud = Double.parseDouble(location.get(i).get("campo_longitud").toString());
}
【问题讨论】:
标签: java android android-studio try-catch