MKLocalSearch附近兴趣点的搜索

现在很多主流app都有涉及到O2O的模块,根据用户的需求和用户的位置,给用户提供最准确最贴心的服务。其中LBS功能可以帮我们实现这一点。这次刚好用到它,所以拿它出来说说。功能主要通过iOS原生方法MKLocalSearch实现。

//实例化一个搜索请求
MKLocalSearchRequest* request = [[MKLocalSearchRequest alloc]init];

//searchStr:搜索的内容
request.naturalLanguageQuery = searchStr;

//指定搜索范围,如果用的是模拟器,可以模拟一个经纬度(23.071123, 113.404434)
request.region = MKCoordinateRegionMakeWithDistance(CLLocationCoordinate2DMake(23.071123, 113.404434),
 1000, 1000);

//实例化 MKLocalSearch
MKLocalSearch localSearch = [[MKLocalSearch alloc]initWithRequest:request];

//开始搜索
[localSearch startWithCompletionHandler:^(MKLocalSearchResponse * _Nullable response,
 NSError * _Nullable error) {
    if (response.mapItems.count==0||error!=nil) {
        NSLog(@"error : %@",error);
    }else{
        //取得搜索后的结果 response.mapItems
    }
}];

Comments