谷歌地图API和geocoder.getFromLocationName

问题描述:

我想使用Google地图搜索GPS位置。我已经注册Google Maps API,并获得了关键。我可以在地图上成功查明我目前的位置。接下来的部分是搜索当前GPS位置周围的物品。谷歌地图API和geocoder.getFromLocationName

方法1:我尝试使用Android的geocoder.getFromLocationName("UPS",5),但我没有得到任何东西。

方法2:打谷歌https://maps.googleapis.cm/maps/apo/place/search但它需要一个客户端ID。要获得客户端ID,我必须创建一个首要帐户。我必须这样做吗?

任何建议如何使用地图搜索Android的位置?

“GPS”是您要查找的地方吗?不是城市或街道名称?我认为这是问题。

也许看: How can I find the latitude and longitude from address?

+0

它不是GPS它的UPS(联合邮政服务)对不起,abt那。我想找到靠近我的地方的UPS地点。 – rachana 2010-10-29 07:10:39

你将要使用一个更好的“地址”比其他UPS找到利用地理编码的位置。你知道有多少UPS可以找到。 getFromLocationName()最好与详细的位置信息和locale指令一起使用,因此它将搜索范围限制为指定的Locale。另外,您经常会在模拟器中获得IOExceptions。最后使用SDK 2.3及以上版本不适用于Geocoder。

尝试这样:

Geocoder geocoder = new Geocoder(this, Locale.US); 

     String staddress = "Georgia Tech, Atlanta, GA"; 

     try{ 
     List<Address> loc = geocoder.getFromLocationName(staddress, 5); 
     } 
     catch(IOException e) { 
     Log.e("IOException", e.getMessage()); 
     Toast.makeText(this, "IOException: " + e.getMessage(),20).show(); 

注意语言环境是如何设置为美国时,我新我的地理编码器。还请注意围绕调用geocoder的尝试。这将捕捉任何IO异常,并允许你无法处理它们,因为我使用Toast消息和其他一些不可见的流控制语句