#android #google-maps #url
#Android #google-карты #url
Вопрос:
void url_get(double lati, double longi) {
URL url = null;
try {
url = new URL("https://maps.googleapis.com/maps/api/place/search/json?amp;location=" lati "," longi "amp;radius=3000amp;types=hospitalamp;sensor=trueamp;key=MY_KEY");
} catch (MalformedURLException e) {
e.printStackTrace();
}
Я не получаю никаких выходных данных для этого.
Однако, когда я заменяю lat и long жестко заданными значениями, я получаю правильный вывод.Не могли бы вы, пожалуйста, помочь мне в этом?
"https://maps.googleapis.com/maps/api/place/search/json?amp;location=17.739290150000002,83.3071201amp;radius=6000amp;types=hospitalamp;sensor=trueamp;key=MY_KEY"
Это правильный способ выразить это при жестком кодировании.
Комментарии:
1. каковы значения lati и longi ?
2.
I am not getting any output for this.
В этом случае у вас было это исключение! Самое меньшее, что вы могли бы сделать, это опубликовать значениеurl
, которое вы получаете.3. попробуйте войти
lati
в систему иlongi
перед созданием URL-адреса4. Значения lati и longi передаются с помощью другой функции. Эта функция работает нормально.
Ответ №1:
Пожалуйста, попробуйте это
Uri.Builder builder = new Uri.Builder();
builder.scheme("https")
.authority("maps.googleapis.com")
.appendPath("maps")
.appendPath("api")
.appendPath("place")
.appendPath("search")
.appendPath("json")
.appendQueryParameter("location", "17.739290150000002,83.3071201")
.appendQueryParameter("radius", "6000")
.appendQueryParameter("types", "hospital")
.appendQueryParameter("sensor", "true")
.appendQueryParameter("key", "MY_KEY");
String myUrl = builder.build().toString();
Комментарии:
1. Вы вообще не используете
double lati, double longi
. Или двойников. Таким образом, вы полностью избегаете проблемы.2. Нет, нет. Я хочу использовать lati и longi в своем URL. Точно так же, как я писал в первом случае. Но это не давало правильного вывода.