| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202 | ////  AMapLocationCommonObj.h//  AMapLocationKit////  Created by AutoNavi on 15/10/22.//  Copyright © 2015年 Amap. All rights reserved.//#import <Foundation/Foundation.h>#import <CoreLocation/CoreLocation.h>#import <UIKit/UIKit.h>///AMapLocation errorDomainextern NSString * const AMapLocationErrorDomain;///AMapLocation errorCodetypedef NS_ENUM(NSInteger, AMapLocationErrorCode){    AMapLocationErrorUnknown = 1,               ///<未知错误    AMapLocationErrorLocateFailed = 2,          ///<定位错误    AMapLocationErrorReGeocodeFailed  = 3,      ///<逆地理错误    AMapLocationErrorTimeOut = 4,               ///<超时    AMapLocationErrorCanceled = 5,              ///<取消    AMapLocationErrorCannotFindHost = 6,        ///<找不到主机    AMapLocationErrorBadURL = 7,                ///<URL异常    AMapLocationErrorNotConnectedToInternet = 8,///<连接异常    AMapLocationErrorCannotConnectToHost = 9,   ///<服务器连接失败    AMapLocationErrorRegionMonitoringFailure=10,///<地理围栏错误    AMapLocationErrorRiskOfFakeLocation = 11,   ///<存在虚拟定位风险    AMapLocationErrorNoFullAccuracyAuth = 12,   ///<精确定位权限异常};///AMapLocation Region Statetypedef NS_ENUM(NSInteger, AMapLocationRegionState){    AMapLocationRegionStateUnknow = 0,          ///<未知    AMapLocationRegionStateInside = 1,          ///<在范围内    AMapLocationRegionStateOutside = 2,         ///<在范围外};///AMapLocation Region Languagetypedef NS_ENUM(NSInteger, AMapLocationReGeocodeLanguage){    AMapLocationReGeocodeLanguageDefault = 0,          ///<默认,根据地区选择语言    AMapLocationReGeocodeLanguageChinse = 1,           ///<中文    AMapLocationReGeocodeLanguageEnglish = 2,          ///<英文};///AMapLocation Accuracy Modetypedef NS_ENUM(NSInteger, AMapLocationAccuracyMode) {    AMapLocationFullAndReduceAccuracy = 0,    AMapLocationFullAccuracy,    AMapLocationReduceAccuracy};///逆地理信息@interface AMapLocationReGeocode : NSObject<NSCopying,NSCoding>///格式化地址@property (nonatomic, copy) NSString *formattedAddress;///国家@property (nonatomic, copy) NSString *country;///省/直辖市@property (nonatomic, copy) NSString *province;///市@property (nonatomic, copy) NSString *city;///区@property (nonatomic, copy) NSString *district;///乡镇@property (nonatomic, copy) NSString *township __attribute__((deprecated("该字段从v2.2.0版本起不再返回数据,建议您使用AMapSearchKit的逆地理功能获取.")));///社区@property (nonatomic, copy) NSString *neighborhood __attribute__((deprecated("该字段从v2.2.0版本起不再返回数据,建议您使用AMapSearchKit的逆地理功能获取.")));///建筑@property (nonatomic, copy) NSString *building __attribute__((deprecated("该字段从v2.2.0版本起不再返回数据,建议您使用AMapSearchKit的逆地理功能获取.")));///城市编码@property (nonatomic, copy) NSString *citycode;///区域编码@property (nonatomic, copy) NSString *adcode;///街道名称@property (nonatomic, copy) NSString *street;///门牌号@property (nonatomic, copy) NSString *number;///兴趣点名称@property (nonatomic, copy) NSString *POIName;///所属兴趣点名称@property (nonatomic, copy) NSString *AOIName;@end#pragma mark - AMapLocationPoint///经纬度坐标点对象@interface AMapLocationPoint : NSObject<NSCopying,NSCoding>///纬度@property (nonatomic, assign) CGFloat latitude;///经度@property (nonatomic, assign) CGFloat longitude;/** *  @brief AMapNaviPoint类对象的初始化函数 *  @param lat 纬度 *  @param lon 经度 *  @return AMapNaviPoint类对象id */+ (AMapLocationPoint *)locationWithLatitude:(CGFloat)lat longitude:(CGFloat)lon;@end///POI信息@interface AMapLocationPOIItem : NSObject <NSCopying, NSCoding>///id@property (nonatomic, copy) NSString *pId;///名称@property (nonatomic, copy) NSString *name;///类型@property (nonatomic, copy) NSString *type;///类型编码@property (nonatomic, copy) NSString *typeCode;///地址信息@property (nonatomic, copy) NSString *address;///经纬度@property (nonatomic, strong) AMapLocationPoint *location;///电话号码@property (nonatomic, copy) NSString *tel;///省份@property (nonatomic, copy) NSString *province;///城市@property (nonatomic, copy) NSString *city;///区@property (nonatomic, copy) NSString *district;@end///行政区域信息@interface AMapLocationDistrictItem : NSObject <NSCopying, NSCoding>///城市编码@property (nonatomic, copy) NSString *cityCode;///区域编码@property (nonatomic, copy) NSString *districtCode;///区名@property (nonatomic, copy) NSString *district;///行政区域轮廓坐标点,每个行政区可能有多个模块,每个模块的坐标点数组由AMapLocationPoint构成@property (nonatomic, copy) NSArray <NSArray<AMapLocationPoint *> *> *polylinePoints;@end///AMapLocation CoordinateTypetypedef NS_ENUM(NSUInteger, AMapLocationCoordinateType){    AMapLocationCoordinateTypeBaidu = 0,        ///<Baidu    AMapLocationCoordinateTypeMapBar,           ///<MapBar    AMapLocationCoordinateTypeMapABC,           ///<MapABC    AMapLocationCoordinateTypeSoSoMap,          ///<SoSoMap    AMapLocationCoordinateTypeAliYun,           ///<AliYun    AMapLocationCoordinateTypeGoogle,           ///<Google    AMapLocationCoordinateTypeGPS,              ///<GPS};/** *  @brief 转换目标经纬度为高德坐标系 *  @param coordinate 待转换的经纬度 *  @param type       坐标系类型 *  @return 高德坐标系经纬度 */FOUNDATION_EXTERN CLLocationCoordinate2D AMapLocationCoordinateConvert(CLLocationCoordinate2D coordinate, AMapLocationCoordinateType type);/** *  @brief 判断目标经纬度是否在大陆以及港、澳地区。输入参数为高德坐标系。 *  @param coordinate 待判断的目标经纬度 *  @return 是否在大陆以及港、澳地区 */FOUNDATION_EXTERN BOOL AMapLocationDataAvailableForCoordinate(CLLocationCoordinate2D coordinate);
 |