充电桩搜索
充电桩搜索功能通过获取充电桩POI信息详情,根据搜索方式可以分为关键字搜索、圆形搜索,矩形搜索,沿路搜索。
关键字搜索
关键字搜索是在设置关键字条件的情况下,进行的搜索。示例代码如下:
EVSearch mEvSearch = new EVSearch(); //设置参数 mEvSearch.setQuery(EVSearch.Query.newQuery("特斯拉")); mEvSearch.setListener(new EVSearch.Listener() { @Override public void onSuccess(final POISearchResult result) { //搜索成功 } @Override public void onFail(APIStatus status) { //搜索失败 } }); //发起搜索 mEvSearch.search();
EVSearch.Query 说明:
1. 只能通过EVSearch.Query中newQuery (String keyword)方法获取实例
2. 参数keyword: 搜索的关键字。
注:结果返回接口为异步线程接口。
圆形搜索
以设置的坐标为圆点,展开设置半径范围内的关键字搜索,示例代码如下:
EVSearch mEvSearch = new EVSearch(); //设置参数 mEvSearch.setQuery(EVSearch.Query.newQuery(new SearchArea.Circular(new GeoPoint(116.39750, 39.90850), 5000))); mEvSearch.setListener(new EVSearch.Listener() { @Override public void onSuccess(final POISearchResult result) { //搜索成功 } @Override public void onFail(APIStatus status) { //搜索失败 } }); //发起搜索 mEvSearch.search();
EVSearch.Query 说明:
1. 通过EVSearch.Query中newQuery(SearchArea area)方法获取实例
2. area: 搜索区域,圆形区域为new SearchArea.Circular(GeoPoint point,int radius),参数设置解释如下:
(1) 参数point: Geopoint类,圆形的原点,例如“new GeoPoint(116.39750, 39.90850)”。
(2) 参数radius: int类,搜索的半径,单位米。
注:结果返回接口为异步线程接口,Android项目如需在返回中操作控件,必须切换到Main主线程中。
多边形搜索
根据经纬度点顺序绘制一个多边形,搜索在此范围内的充电桩,示例代码如下:
EVSearch mEvSearch = new EVSearch(); //设置参数 EVSearch.Query mEVSearchQuery = EVSearch.Query.newQuery( new SearchArea.Polygon( new GeoPoint[]{ new GeoPoint(116.43423, 39.93766), new GeoPoint(116.43423, 39.89946), new GeoPoint(116.35448, 39.89946), new GeoPoint(116.35448, 39.93766) } ) ); mEvSearch.setQuery(mEVSearchQuery); //发起搜索 mEvSearch.setListener(new EVSearch.Listener() { @Override public void onSuccess(final POISearchResult result) { //搜索成功 } @Override public void onFail(APIStatus status) { //搜索失败 } }); //发起搜索 mEvSearch.search();
EVSearch.Query说明:
1. 通过EVSearch.Query中newQuery (SearchArea area)方法获取实例。
2. area 搜索区域,多边形区域参数设置new SearchArea. Polygon (GeoPoint[] geoPoints), 参数geoPoints为坐标点数组。
注:结果返回接口为异步线程接口。
沿途搜索
以设置的路线坐标序列进行沿路关键字搜索,示例代码如下:
EVSearch mEvSearch = new EVSearch(); //设置请求参数, GeoPoint[] geoPoints=new GeoPoint[2]; geoPoints[0]=new GeoPoint(116.39750, 39.90850); geoPoints[1]= new GeoPoint(116.43423, 39.93766); mEvSearch.setQuery(EVSearch.Query.newQuery(new SearchArea.Path(geoPoints))); mEvSearch.setListener(new EVSearch.Listener() { @Override public void onSuccess(final POISearchResult result) { //搜索成功 } @Override public void onFail(APIStatus status) { //搜索失败 } }); //发起搜索 mEvSearch.search();
EVSearch.Query 说明:
1. 通过EVSearch.Query中newQuery (SearchArea area)方法获取实例
2. area: 搜索区域,沿路参数设置new SearchArea.Path(GeoPoint[] geoPointArray),参数geoPointArray为路线经过的坐标点数组。
注:结果返回接口为异步线程接口。