Google Maps API のマーカーから住所を収集する必要があるアプリケーションがあります。このコードをテストしたところ、Android 6.0 を実行するデバイスで正常に動作します。
Geocoder geocoder = new Geocoder(this, Locale.getDefault());
try {
List<Address> addressList1 = geocoder.getFromLocation(currentLatitude,currentLongitude,1);
Address addressCurrent = addressList1.get(0);
full_address = addressCurrent.getAddressLine(0); //Detail address
country = addressCurrent.getCountryName();
//locality = addressCurrent.getLocality(); //sub-district
admin_area = addressCurrent.getAdminArea(); //City
sub_admin_area = addressCurrent.getSubAdminArea(); //District
road_name = addressCurrent.getThoroughfare(); // road
Toast.makeText(this, full_address, Toast.LENGTH_SHORT).show();
}catch (IOException e){
Toast.makeText(this, "No Data", Toast.LENGTH_SHORT).show();
Log.e("error geocoder", e.toString());
}
しかし、Android 8.1 デバイスで実行しようとすると、エラー ログが返されます。
E/エラー ジオコーダ: java.io.IOException: NetCode:-1000,NetRes:{}
私はそれを検索しようとしましたが、解決策が見つかりませんでした。どうすればこれを修正できますか?