Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/378.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/210.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java android geocoder api 10服务不可用 Geocoder-Geocoder=新的地理编码器(getApplicationContext(),Locale.ENGLISH); 试一试{ 列表地址=地理编码器。getFromLocation(lat,lon,1);_Java_Android_Google Maps - Fatal编程技术网

Java android geocoder api 10服务不可用 Geocoder-Geocoder=新的地理编码器(getApplicationContext(),Locale.ENGLISH); 试一试{ 列表地址=地理编码器。getFromLocation(lat,lon,1);

Java android geocoder api 10服务不可用 Geocoder-Geocoder=新的地理编码器(getApplicationContext(),Locale.ENGLISH); 试一试{ 列表地址=地理编码器。getFromLocation(lat,lon,1);,java,android,google-maps,Java,Android,Google Maps,答案: 首先,如果您使用的是emulator,请尝试将AVD设备的“目标”设置为“谷歌API”之一,而不是基本的“Android”sdk。因此,如果您希望以2.3.3为目标,请使用“谷歌API(谷歌公司)-API级别10”和而不是“Android 2.3.3-API级别10” 背景信息 GoogleAPI插件包括一个(搜索“geocoder后端”),用于geocoder.getFromLocation…方法 Geocoder类需要一个不包含在核心android框架中的后端服务 这就是为什么AVD

答案:

首先,如果您使用的是emulator,请尝试将AVD设备的“目标”设置为“谷歌API”之一,而不是基本的“Android”sdk。因此,如果您希望以2.3.3为目标,请使用“谷歌API(谷歌公司)-API级别10”和而不是“Android 2.3.3-API级别10”

背景信息

GoogleAPI插件包括一个(搜索“geocoder后端”),用于
geocoder.getFromLocation…
方法

Geocoder类需要一个不包含在核心android框架中的后端服务

这就是为什么AVD必须以Google API为目标才能使这些方法发挥作用。如果不起作用,请尝试在真实设备上进行测试。出现此异常的原因除了可能的错误之外,可能是互联网问题/连接不足,或者更可能是该设备上没有后端服务

据推测,大多数包括谷歌服务和地图等应用程序的设备都会实现后端。我不知道这有多准确

还有一个以API9开始的方法,
Geocoder.isPresent()
,如果存在后端实现,它将返回true。然而,我发现这是不可靠的,因为在Amazon Kindle Fire上测试它时返回true,但在制作
getFromLocationName()时
呼叫我仍然收到一个
IOException:服务不可用


确定是否存在后端的最可靠方法似乎是调用
getFromLocation…
并查看您的
addresses
字段是否为
null
,或者
列表是否为空。有点模糊,因为如果存在simp,这些方法也可能返回
null
或空列表回答:

首先,如果您使用的是emulator,请尝试将AVD设备的“目标”设置为“谷歌API”之一,而不是基本的“Android”sdk。因此,如果您希望以2.3.3为目标,请使用“谷歌API(谷歌公司)-API级别10”和而不是“Android 2.3.3-API级别10”

背景信息

GoogleAPI插件包括一个(搜索“geocoder后端”),用于
geocoder.getFromLocation…
方法

Geocoder类需要一个不包含在核心android框架中的后端服务

这就是为什么AVD必须以Google API为目标才能使这些方法发挥作用。如果不起作用,请尝试在真实设备上进行测试。出现此异常的原因除了可能的错误之外,可能是互联网问题/连接不足,或者更可能是该设备上没有后端服务

据推测,大多数包括谷歌服务和地图等应用程序的设备都会实现后端。我不知道这有多准确

还有一个以API9开始的方法,
Geocoder.isPresent()
,如果存在后端实现,它将返回true。然而,我发现这是不可靠的,因为在Amazon Kindle Fire上测试它时返回true,但在制作
getFromLocationName()时
呼叫我仍然收到一个
IOException:服务不可用


确定是否存在后端的最可靠方法似乎是调用
getFromLocation…
并查看您的
addresses
字段是否为
null
,或者
列表是否为空。有点模糊,因为如果存在simp,这些方法也可能返回
null
或空列表ly.

阅读相关问题并注意这是一个bug,是否有机会从位置获取地址?阅读相关问题并注意这是一个bug,是否有机会从位置获取地址?
Geocoder geocoder = new Geocoder(getApplicationContext(), Locale.ENGLISH);
try {
    List<Address> addresses =  geocoder.getFromLocation(lat,lon, 1); <--Exception