ユーザーの緯度と経度の位置に基づいてユーザーの位置を特定する Android アプリを作成しています。だから私はを使用していGoogle Maps reverse geocoder
ます。しかし問題は、Google が 1 日に 2500 回の API 呼び出ししかできないと言っていることです。しかし、私のユーザーは 2500 人をはるかに超えると予想してGoogle Maps reverse geocoder
います。では、1 日あたり無制限の API 呼び出しを行う代替手段はありますか?
4030 次
3 に答える
3
パラメータで経度と緯度を挿入し、サーバーとサーバーにリクエストを送信して、アドレスで応答を返すなど、Google APIを介して使用できます。
public static String getAddressUrl(Context context) {
String responseText = null;
// String latitude = "38.89";
// String longitude = "-77.03";
String googleurl = "http://maps.google.com/maps/geo?";
Log.v(TAG , "Latitude is: " + latitude + "Longitude is:" + longitude);
StringBuilder sbuilder = new StringBuilder();
sbuilder.append(googleurl);
sbuilder.append("q = " + latitude + "," + longitude);
sbuilder.append("&output = responseText&sensor = true");
String url = sbuilder.toString();
Log.v(TAG, "url is: " + url);
try {
DefaultHttpClient httpclient = new DefaultHttpClient();
HttpPost httppost = new HttpPost(url);
HttpResponse httpresponse = httpclient.execute(httppost);
HttpEntity httpentity = httpresponse.getEntity();
InputStream is = httpentity.getContent();
BufferedReader reader = new BufferedReader(
new InputStreamReader(is, "iso-8859-1"), 8);
StringBuilder sb = new StringBuilder();
String line = null;
while((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
is.close();
responseText = sb.toString();
}
catch(ClientProtocolException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}
return responseText;
}
于 2013-05-12T07:50:09.680 に答える