2011-09-28 3 views
2

Urban Airship에서 제공 한 서버 측 API를 사용하여 Android 앱과 통합하려고했습니다. 내 안드로이드 애플 리케이션에서 도시 비행선 서버에 등록 된 모든 APIDs를 얻으려고합니다. 나는 3 개의 장치 (에뮬레이터 등록)를 등록했지만 항상 사용자 이름과 암호로 내 앱 키와 비밀 번호를 사용하여 로그인 한 후 https://go.urbanairship.com/api/apids/에서 볼 수 있지만 Null 값을 항상 얻고 있습니다.도시 비행선./api/apids/method를 사용하여 Android APID 가져 오기

Urban Airship은 노출 된 서버 측 REST API를 사용하는 방법 (jave code)을 제공합니다. 개발자는 Urban Airship에서 제공하지 않는 기능에 대해 자체적 인 방법을 써야합니다. APID를 얻기위한 방법이 없었기 때문에이 방법을 다른 방법과 함께 작성했습니다.

public DeviceTokensResponse getApids() throws URISyntaxException 
{ 
    return get(DeviceTokensResponse.class, "/api/apids/"); 
} 

난/성공적 API/API/device_tokens을 사용하여 도시 비행선 서버에 저장된 아이폰 기기 토큰을 가져 동일한 서버 측 API를 사용했다. iPhone 장치 토큰을 가져 오는 코드를 찾으십시오. 이것은 예상되는 결과를 제공합니다.

public DeviceTokensResponse getDeviceTokens() throws URISyntaxException 
{ 
    return get(DeviceTokensResponse.class, "/api/device_tokens/"); 
} 

Urban Airship과 같은 특정 제품에 대한 문의는 죄송합니다. 나는이 포럼에서 Urban Flyship의 창립자를 보았으므로이 질문을 게시하는 것을 망설이지 않았습니다. 친절하게 도와주세요.

답변

0

ApidList.java (List 속성 있음) 및 Apid.java (json 태그 키 이름에 해당하는 속성 포함)라는 사용자 지정 클래스를 만드는 방법으로이를 해결했습니다. json 키 이름과 클래스 속성의 일대일 매핑이 있으면 응답 객체가 올바르게 채워집니다. 매핑이 실패하면 null 객체가 반환됩니다 (이전에 나에게 일어난 일)

관련 문제