Android 如何在skobbler中使用POI/地理编码搜索
我想在skobbler中使用字符串搜索一个位置。像waze一样,当我搜索例如“美国洛杉矶环球影城”时,搜索环球影城的地理点就会给我。提前谢谢 现在SDK提供了两种搜索方式:Android 如何在skobbler中使用POI/地理编码搜索,android,map,skmaps,Android,Map,Skmaps,我想在skobbler中使用字符串搜索一个位置。像waze一样,当我搜索例如“美国洛杉矶环球影城”时,搜索环球影城的地理点就会给我。提前谢谢 现在SDK提供了两种搜索方式: 地址(地理编码)-通过多步骤搜索组件 附近的POI-通过NearBySearch组件 如果我理解正确,您正在寻找一个“一行搜索”组件(在一行中键入您的查询并输入)-这是SDK目前没有公开的内容(我们正在进行开发,11月份我们应该会有新的开发),我认为你不需要把事情复杂化,也不需要依赖Skobbler,你可以使用Andro
- 地址(地理编码)-通过多步骤搜索组件
- 附近的POI-通过NearBySearch组件
如果我理解正确,您正在寻找一个“一行搜索”组件(在一行中键入您的查询并输入)-这是SDK目前没有公开的内容(我们正在进行开发,11月份我们应该会有新的开发),我认为你不需要把事情复杂化,也不需要依赖Skobbler,你可以使用Android原生地理编码API。结果相当准确 请注意,以下是在UI线程上运行的,您可能希望将其置于AsyncTask或其他任何任务上
private void geocode (String address) {
String baseUrl = "";
String [] splitAddress = address.split ("[,\\s\\-:\\?]");
for (int i = 0; i < splitAddress.length; i++) {
if (i != 0) {
baseUrl += "+";
}
baseUrl += splitAddress [i];
}
if (NetUtils.isOnline (MyActivity.this)) {
Geocoder geocoder = new Geocoder (MyActivity.this);
try {
ProgressView.show (MyActivity.this, true);
List<Address> addresses = geocoder.getFromLocationName (baseUrl, 1);
if (addresses != null && addresses.size() > 0) {
Address addressResult = addresses.get (0);
Log.e (MyActivity.this.class.getSimpleName () + " -- Address Found", address + " : " + addressResult.getLatitude () + " : " + addressResult.getLongitude());
launchRouteCalculation (addressResult.getLatitude (), addressResult.getLongitude ());
} else {
PopupUtils.show (MyActivity.this, null, "Could not find the destination.");
}
} catch (IOException e) {
e.printStackTrace();
} catch (Exception ex) {
ex.printStackTrace();
} finally {
ProgressView.dismiss ();
}
}
private void地理编码(字符串地址){
字符串baseUrl=“”;
字符串[]splitAddress=address.split(“[,\\s\\-:\\?]”);
for(int i=0;i0){
AddressAddressResult=addresses.get(0);
Log.e(MyActivity.this.class.getSimpleName()+“--Address Found”,Address+“:“+addressResult.getLatitude()+”:“+addressResult.getLatitude()”);
启动RouteCalculation(addressResult.getLatitude(),addressResult.getLatitude());
}否则{
PopupUtils.show(MyActivity.this,null,“找不到目标”);
}
}捕获(IOE异常){
e、 printStackTrace();
}捕获(例外情况除外){
例如printStackTrace();
}最后{
ProgressView.disclose();
}
}
什么样的更新?(API将在2015年第一季度/第二季度保持不变)您是否仍在开发类似于“一线搜索”的组件,如果是,您是否有ETA?是的-计划在今年秋天与我们的消费者应用程序更新一起推出