2014-09-10 1 views
0

저는 오랫동안 안드로이드 용 Quickblox SDK를 사용해 왔습니다. 그러나 새 SDK 라이브러리가 일부 코드를 작동하지 않게했습니다. 특히 위치 목록을 만듭니다. 그런 다음 주변 위치를 검색하여 현재 위치와 반경을 제공합니다.안드로이드 용 최신 Quickblox SDK : 가까운 위치가 작동하지 않습니다.

getLocationsBuilder.setCurrentPosition(qbLocation.getLatitude(), 
    qbLocation.getLongitude()); 

    getLocationsBuilder.setRadius(point.getLatitude(), 
      point.getLongitude(), (float) 5.0); 



    GeoPoint point = new GeoPoint(qbLocation.getLatitude(), 
      qbLocation.getLongitude()); 

그러나 형식이 잘못되었다는 결과가 나타납니다.

"{"오류 "{"CURRENT_POSITION "}"반경으로 설정한다 ","GeoPoint의 형식이어야한다 "]} 여기

내 전체 코드 :

Log.d(TAG, 
      "update location is " + point.getLatitude() + " " 
        + point.getLongitude()); 

    QBLocationRequestBuilder getLocationsBuilder = new QBLocationRequestBuilder(); 
    getLocationsBuilder.setPage(1); 
    getLocationsBuilder.setPerPage(100); 
    getLocationsBuilder.setLastOnly(); 

    getLocationsBuilder.setCurrentPosition(qbLocation.getLatitude(), qbLocation.getLongitude()); 

    getLocationsBuilder.setRadius(point.getLatitude(), 
    point.getLongitude(), (float) 5.0); 

    int unixTime = (int) (System.currentTimeMillis()/1000L - 1000); 
    getLocationsBuilder.setMinCreatedAt(unixTime); 

    // getLocationsBuilder.setSort(SortField.DISTANCE); 

    QBLocations.getLocations(getLocationsBuilder, new QBEntityCallback<ArrayList<QBLocation>>() { 
     @Override 
     public void onSuccess(ArrayList<QBLocation> qbLocations, Bundle bundle) { 
      ArrayList<String> card_ids = new ArrayList<String>(); 
      for (QBLocation location : qbLocations) { 
       Log.d(TAG, "locations nearby : " + location); 
       card_ids.add(location.getStatus()); // status is card_id 
      } 
      getCards(card_ids); 
     } 

     @Override 
     public void onSuccess() { 

     } 

     @Override 
     public void onError(List<String> strings) { 

     } 
    }); 

모든 위치를 검색하고 원하는 위치로 가져올 수 있지만 SDK를 사용하는 것만 큼 우아하지는 않습니다.

Quickblox SDK를 이전 버전으로 교체하면 제대로 작동합니다.

당신이 어떤 버전을 사용합니까 :이 1.2.4

http://quickblox.com/developers/Android#Framework_changelog에 고정 된 것처럼

+0

또한 모든 위치를 검색하고 하나의 결과 만있는 경우 QBCustomObject를 QBEntityLimited로 캐스팅 할 수 없음을 알리는 SDK 충돌이 발생합니다. – bahakz

답변

0

은 같은데?

+0

Q-municate 프로젝트에서 가져온 2.0 SDK를 사용 중입니다. – bahakz

+0

SDK 1.2.4에서 작동한다고 생각합니다. 그러나 최신 API를 사용하고 이미 새 콜백을 지원하기 위해 내 프로그램과 QuickBlox 호출을 다시 작성했습니다. 위치 만 작동하지 않습니다. – bahakz

관련 문제