我的android应用程序正在跳过IF语句:
Geocoder gcd = new Geocoder(this, Locale.UK);
List<Address> addresses = gcd.getFromLocation(curLatitude, curLongitude,1);
if (addresses.size() > 0) //this is skipped
{
StringBuilder cityName = new StringBuilder();
cityName.append(addresses.get(0).getLocality());
CityName = cityName.toString();
昨天和今天工作正常由于一些不明原因而被忽略了。你能告诉我为什么吗?
答案 0 :(得分:0)
这可能是由于两个原因:
IF
语句之前的行中,会抛出Exception
。addresses
没有元素您应该检查addresses
长度并捕获任何可能的Exception
以了解您的条件未执行的原因。
答案 1 :(得分:0)
根据documentation方法getFromLocation
返回Address对象列表。如果不是,则返回 null或空列表 找到匹配项或没有可用的后端服务。
这意味着您传递的坐标不包含任何地址。
答案 2 :(得分:0)
看看这里: https://code.google.com/p/android/issues/detail?id=38009
答案 3 :(得分:0)
你的地址对象可能有以下问题:1)地址可能为空,因此可能发生nullpointerexception 2)你的地址列表没有元素所以它可能总是返回0