11.2 Android的地址服务
对于普通用户而言,经纬度信息非常的晦涩难懂,无法从这个抽象的数值中准确理解当前所处的位置。为了帮助用户理解经纬度信息的含义,Android还提供了一个位置相关的服务:地址编码服务(Geocoding)。
地址编码服务,是将经纬度信息换算成现实中的地址信息,包括具体的国家、城市、街道等。通过这样直观的信息,用户可以更好地了解当前所处的位置。
11.2.1 地址服务的框架
在Android中,地址服务与定位服务一样,都是由位置信息服务LocationProviderService来负责管理。在位置信息服务中,会初始化一个地址服务源,该地址服务源派生自接口android.location.IGeocodeProvider,不同的Android ROM提供者,可以自行提供不同的地址服务源。在默认的Android系统中,该地址服务源由Google实现,通过Google的地址服务根据经纬度查询地址信息。
位置信息服务于地址服务源,也是通过Socket连接进行通信,如果地址服务源不存在或者无法连接,该设备上的地址服务就无法使用了。