GeoCoder クライアントは Google マップと共に含まれているため、Google マップを搭載したすべてのデバイスには、機能する GeoCoder 実装が必要です。概して、Android デバイスには Google マップがインストールされています。それ以外には、Google マップがなく、他の GeoCoder バックエンドが利用可能である可能性があります。このような場合、次のコードを使用して、デバイスに動作中の GeoCoder 実装があるかどうかを判断できます。
final Geocoder geocoder = new Geocoder(this);
final String locName = "1600 Amphitheatre Parkway, Mountain View, CA";
try {
final List<Address> list = geocoder.getFromLocationName(locName, 1);
if ( ! (list == null || list.isEmpty()) ) {
final Address address = list.get(0);
System.out.println("Geocoder backend present, (lat,lon) = (" + address.getLatitude() + ", " + address.getLongitude() + ")");
}
else {
System.out.println("Geocoder backend not present");
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}