使用location搜索会返回内部服务器错误

时间:2015-01-07 19:21:48

标签: android parse-platform

我在android上构建搜索请求时遇到了问题。

   ArrayList<ParseQuery<Entity>> queriesByCriteria = new ArrayList<>();
   queriesByCriteria.add(ParseQuery.getQuery(Entity.class).whereContains("userName", criteria));
   queriesByCriteria.add(ParseQuery.getQuery(Entity.class).whereContains("locationName", criteria));
   queriesByCriteria.add(ParseQuery.getQuery(Entity.class).whereContains("descriptionBefore", criteria));
   queriesByCriteria.add(ParseQuery.getQuery(Entity.class).whereContains("descriptionAfter", criteria));

   ParseQuery<Entity> combinedQuery = ParseQuery.or(queriesByCriteria)
                            .orderByDescending("createdAt")
                            .whereEqualTo("done", true);

   float mapRadius;
   int mapUnits = preferences.getMapUnits();
   if (mapUnits == MapUnitType.MAP_UNIT_KILOMETER) {
       mapRadius = (preferences.getMapRadius());
   } else {
       mapRadius = 1.6f * (preferences.getMapRadius());
   }
   entities = combinedQuery
                            .whereWithinKilometers("location", new ParseGeoPoint(latLng.getLatitude(), latLng.getLongitude()), mapRadius)
                            .find();

所以find()抛出异常&#34; com.parse.ParseException:内部错误&#34;。

Parse SDK的版本是1.7.1

是parse.com的错误还是我做错了什么?

1 个答案:

答案 0 :(得分:0)

是的,SDK中的内部错误是指内部错误,而不是暴露给SDK用户的错误。在这种情况下,有一个边缘情况不是由find()方法在内部处理的。我的建议是转到Parse suppport page并将此报告为错误。