尝试替换这种代码的平静,希望这将帮助您解决问题。
if((jsonNew.getString("lat"))!=null && (jsonNew.getString("lon"))!= null && !jsonNew.getString("lat").equalsIgnoreCase("null") && !jsonNew.getString("lon").equalsIgnoreCase("null")) {
Log.d("lat = ", jsonNew.getString("lat"));
lat = Float.parseFloat(jsonNew.getString("lat"));
lon = Float.parseFloat(jsonNew.getString("lon"));
locationSet = true;
}
或
JSONObject jsonNew = new JSONObject();
try {
jsonNew.put("due_date", task.getDueDate().getTime());
jsonNew.put("checked", task.isDone());
jsonNew.put("name", task.getName());
jsonNew.put("priority", task.getPriority());
jsonNew.put("due_time", task.getDueTime());
jsonNew.put("notification_before", task.getNotificationBefore());
jsonNew.put("id", task.getId());
jsonNew.put("proximity_alert", task.isAlertOn());
if (task.isLocationSet()) {
jsonNew.put("lon", task.getLongitude()+"");
jsonNew.put("lat", task.getLatitude()+"");
}
return jsonNew;
} catch (JSONException e) {
e.printStackTrace();
}
return null;
if(jsonNew.has("lat") && jsonNew.has("lon") && (jsonNew.getString("lat"))!=null && (jsonNew.getString("lon"))!= null) {
Log.d("lat = ", jsonNew.getString("lat"));
lat = Float.parseFloat(jsonNew.getString("lat"));
lon = Float.parseFloat(jsonNew.getString("lon"));
locationSet = true;
}