Googleのapiを使用して近くのレストランを取得するアンドロイドアプリを構築していますが、複数のキーワードを使用しているときにURLの書式設定に少し問題がある ブラウザでURLをテストするとそれはうまく動作しますが、問題は、括弧付きの部分がURLから除外されるアンドロイドスタジオ内のURLを取得するときです。したがって、必要なのは、アンドロイドのURLの中に角かっこを入れる方法です。AndroidのURL内に角括弧を含めるには
これはURLのメインコードのフォーマットです:
String keywordText;
String keyword="(Pizza)and(sushi)";
String BASE_URL="https://maps.googleapis.com/maps/api/place/nearbysearch/json?";
String API_KEY= "AIzaSyBg-iwzAjavEUVV9hOQUr0JljZHL7XFRkQ";
String ApiKey;
String locationText;
public void onLocationComplete(Location location) {
Log.e("onLocationComlete", keyword);
keywordText = "&keyword=" + keyword;
ApiKey = "&key=" + API_KEY;
radiusText = "&radius=" + radius;
locationText = "&location=" + location.getLatitude() + "," + location.getLongitude();
url = BASE_URL + locationText + radiusText + keywordText + ApiKey;
loc = location;
new FetchFromServerTask(Restaurants.this, 0).execute(url);
}
URLは、私はフォーマット後に取得する必要があります。 https://maps.googleapis.com/maps/api/place/nearbysearch/json?&location=33.2711492,35.2125282&radius=10000&keyword=(pizza)and(sushi)&key=AIzaSyBg-iwzAjavEUVV9hOQUr0JljZHL7XFRkQ
ではなく、私はコンソールからこの作業ではないURLを取得:image
には、URLの中にかっこを入れる方法や、複数のキーワードを使って場所を検索する方法がありますか?
[のURLEncoder](https://docs.oracle.com/javase/7/docs/api/を見てくださいjava/net/URLEncoder.html)のクラスです。 –
手段を送信できない場合は、getメソッドではなくpostメソッドを使用して位置データを送信します。 –
あなたは[URIビルダー](http://stackoverflow.com/questions/19167954/use-uri-builder-in-android-or-create-url-with-variables)を使ってみるとよいでしょう –