본문으로 바로가기 하단전체메뉴로 바로가기

Open API SDK(Android)

Home / 개발 / SDK / Open API SDK(Android)

1. API 통신

API Requests (APIRequest)

API 서버와의 동기 통신을 위한 메소드. 통신은 시간 지연이 발생하므로, UI Thread 상에서의 호출을 지양해야 합니다.

+ void setAppKey(String appKey)

Open API 서버와의 통신에 사용되는 App Key를 설정합니다. 입력된 정보는 Open API 서버와의 통신시에 Header에 담겨져 전송됩니다. 해당 Key 값은 Static으로 관리됩니다.

+ String getAppKey()

Open Api 서버와의 통신에 사용되는 App Key를 반환합니다.

Return - 등록된 App Key를 반환합니다.

+ ResponseMessage request(RequestBundle bundle)

Open API를 호출(동기 통신)하여 결과값을 수신합니다. RequestBundle에 대한 자세한 사항은 Tutorial을 참조하십시오.

Return - OPEN API 호출 결과를 반환합니다.(기본값: JSON 형식으로 수신)
- ResponseMessage는 StatusCode와 ResultMessage로 구성되어있습니다.

Parameters - bundle : Open API 호출에 사용되는 내용 일체를 담고 있는 클래스입니다. 자세한 내용은 Tutorial을 참조하십시오.

Example
	RequestBundle reqBundle = new RequestBundle();
	reqBundle.setUrl("http://testurl.com/enjoyit");
	reqBundle.setHttpMethod(HttpMethod.GET);
	reqBundle.setRequestType(CONTENT_TYPE.JSON);
	reqBundle.setResponseType(CONTENT_TYPE.JSON);
	reqBundle.setPayload("{\"data\":\"testvalue\"}");
	Map<String, Object> param = new HashMap<String, Object>();
	param.put("TextKey", "TestValue");
	reqBundle.setParameters(param);

Exception - PlanetXSDKException: Open API 호출 시에 SDK 내부에서 발생하는 오류입니다. 자세한 내용은 Tutorial을 참조하십시오.

+ ResponseMessage request(RequestBundle bundle, HttpMethod httpMethod)

Open API를 호출(동기 통신)하여 결과값을 수신합니다. RequestBundle 내에 선언되는 HttpMethod보다 Parameter로 선언되는 HttpMethod가 우선시됩니다.

Return - OPEN API 호출 결과를 반환합니다.(기본값: JSON 형식으로 수신) - ResponseMessage는 StatusCode와 ResultMessage로 구성되어있습니다.

Parameters - bundle : Open API 호출에 사용되는 내용 일체를 담고 있는 클래스입니다. 자세한 내용은 Tutorial을 참조하십시오.

Example
	RequestBundle reqBundle = new RequestBundle();
	reqBundle.setUrl("http://testurl.com/enjoyit");
	reqBundle.setRequestType(CONTENT_TYPE.JSON);
	reqBundle.setResponseType(CONTENT_TYPE.JSON);
	reqBundle.setPayload("{\"data\":\"testvalue\"}");
	Map<String, Object> param = new HashMap<String, Object>();
	param.put("TextKey", "TestValue");
	reqBundle.setParameters(param);

- httpMethod: GET/POST/PUT/DELETE 4종의 HttpMethod 중 한 가지 호출 방식을 선택합니다.(기본값: GET)

Exception - PlanetXSDKException: Open API 호출 시에 SDK 내부에서 발생하는 오류입니다. 오류 내용은 Tutorial을 참조하십시오.

+ ResponseMessage request(RequestBundle bundle, url, HttpMethod httpMethod)

Open API를 호출(동기 통신)하여 결과값을 수신합니다. RequestBundle 내에 선언되는 HttpMethod/URL보다 Parameter로 선언되는 HttpMethod/URL이 우선시됩니다.

Return - OPEN API 호출 결과를 반환합니다.(기본값: JSON 형식으로 수신) - ResponseMessage는 StatusCode와 ResultMessage로 구성되어있습니다.

Parameters - bundle : Open API 호출에 사용되는 내용 일체를 담고 있는 클래스입니다. 자세한 내용은 Tutorial을 참조하십시오.

Example
	RequestBundle reqBundle = new RequestBundle();
	reqBundle.setRequestType(CONTENT_TYPE.JSON);
	reqBundle.setResponseType(CONTENT_TYPE.JSON);
	reqBundle.setPayload("{\"data\":\"testvalue\"}");
	Map<String, Object> param = new HashMap<String, Object>();
	param.put("TextKey", "TestValue");
	reqBundle.setParameters(param);

- httpMethod: GET/POST/PUT/DELETE 4종의 HttpMethod 중 한 가지 호출 방식을 선택합니다.(기본값: GET)
- url: Open API 호출 URL입니다.

Exception - PlanetXSDKException: Open API 호출 시에 SDK 내부에서 발생하는 오류입니다. 오류 내용은 Tutorial을 참조하십시오.

Async API Requests(APIRequest)

API 서버와의 비동기 통신을 수행합니다. 비동기 통신은 반드시 RequestListener를 생성한 후 RequestBundle에 설정해야 합니다.

+ void request(RequestBundle bundle, RequestListener requestListener)

Open API를 호출(비동기 통신)하여 결과값을 수신합니다. RequestBundle에 대한 자세한 사항은 Tutorial을 참조하십시오.

Parameters - bundle : Open API 호출에 사용되는 내용 일체를 담고 있는 클래스입니다. 자세한 내용은 Tutorial을 참조하십시오.

Example
	RequestBundle reqBundle = new RequestBundle();
	reqBundle.setUrl("http://testurl.com/enjoyit");
	reqBundle.setHttpMethod(HttpMethod.GET);
	reqBundle.setRequestType(CONTENT_TYPE.JSON);
	reqBundle.setResponseType(CONTENT_TYPE.JSON);
	reqBundle.setPayload("{\"data\":\"testvalue\"}");
	Map<String, Object> param = new HashMap<String, Object>();
	param.put("TextKey", "TestValue");
	reqBundle.setParameters(param);

- requestListener : 비동기 통신에 대한 결과를 수신하는 Listener입니다.

Exception - PlanetXSDKException: Open API 호출 시에 SDK 내부에서 발생하는 오류입니다. 오류 내용은 Tutorial을 참조하십시오.

+ void request(RequestBundle bundle, HttpMethod httpMethod, RequestListener requestListener)

Open API를 호출(비동기 통신)하여 결과값을 수신합니다. RequestBundle 내에 선언되는 HttpMethod보다 Parameter로 선언되는 HttpMethod가 우선시 됩니다.

Parameters - bundle : Open API 호출에 사용되는 내용 일체를 담고 있는 클래스입니다. 자세한 내용은 Tutorial을 참조하십시오.

Example
	RequestBundle reqBundle = new RequestBundle();
	reqBundle.setUrl("http://testurl.com/enjoyit");
	reqBundle.setRequestType(CONTENT_TYPE.JSON);
	reqBundle.setResponseType(CONTENT_TYPE.JSON);
	reqBundle.setPayload("{\"data\":\"testvalue\"}");
	Map<String, Object> param = new HashMap<String, Object>();
	param.put("TextKey", "TestValue");
	reqBundle.setParameters(param);

- requestListener : 비동기 통신에 대한 결과를 수신하는 Listener입니다.
- httpMethod: GET/POST/PUT/DELETE 4종의 HttpMethod 중 한 가지 호출 방식을 선택합니다. (기본값: GET)

Exception - PlanetXSDKException: Open API 호출 시에 SDK 내부에서 발생하는 오류입니다. 오류 내용은 Tutorial을 참조하십시오.

+ void request(RequestBundle bundle, url, httpMethod, RequestListener requestListener)

Open API를 호출(비동기 통신)하여 결과값을 수신합니다. RequestBundle 내에 선언되는 HttpMethod/URL보다 Parameter로 선언되는 HttpMethod/URL이 우선시됩니다

Parameters - bundle : Open API 호출에 사용되는 내용 일체를 담고 있는 클래스입니다. 자세한 내용은 Tutorial을 참조하십시오.

Example
	RequestBundle reqBundle = new RequestBundle();
	reqBundle.setRequestType(CONTENT_TYPE.JSON);
	reqBundle.setResponseType(CONTENT_TYPE.JSON);
	reqBundle.setPayload("{\"data\":\"testvalue\"}");
	Map<String, Object> param = new HashMap<String, Object>();
	param.put("TextKey", "TestValue");
	reqBundle.setParameters(param);

- requestListener : 비동기 통신에 대한 결과를 수신하는 Listener입니다.
- url: Open API 호출 URL입니다
- httpMethod: GET/POST/PUT/DELETE 4종의 HttpMethod 중 한 가지 호출 방식을 선택합니다.(기본값: GET)

Exception - PlanetXSDKException: Open API 호출 시에 SDK 내부에서 발생하는 오류입니다. 오류 내용은 Tutorial을 참조하십시오.

Authentication (OAuthInfoManager)
+ OAuthInfoManager(String appKey)

OAuthInfoManager 생성자입니다. 인증 정보를 담고 있는 oAuthInfo 객체를 초기화합니다.
객체를 생성할 때 appKey 정보를 입력 받은 후, 통신 Header에 반영합니다.

Parameters - appKey: App Key입니다. Open API 호출 시에 반드시 필요한 값입니다.

+ void setContext(Context context)

인증 정보의 저장과 복원에 사용되는 SharedPreferences를 사용하기 위해 Context를 설정합니다.

Parameters - context: 앱 Context입니다. 이는 안드로이드 내부에서 SharedPreferences를 사용하기 위해 설정하는 값입니다.

+ void saveOAuthInfo()

OAuth 인증 정보를 내부 Storage에 저장합니다. 저장되는 내용은 appKey, accessToken, refreshToken 입니다.

Exception - PlanetXSDKException: Context를 설정하지 않았을 때 발생하는 오류입니다.

+ void restoreOAuthInfo()

Storage에 저장된 OAuth 인증 정보를 복원합니다. 복원되는 내용은 appKey, accessToken, refreshToken입니다.

Exception - PlanetXSDKException: Context를 설정하지 않았을 때 발생하는 오류입니다.

+ String reissueAccessToken()

발급받은 Refresh Token을 이용하여 Access Token을 갱신합니다.

Return - String: OAuth 서버로부터 수신한 Json Type의 문자열을 반환합니다.

2. 인터페이스

RequestListener

Open API 호출 시 비동기 통신을 수행한 후, 결과를 전달하는 Listener 인터페이스입니다.

+ void onComplete(ResponseMessage response)

통신 성공 시 호출되는 메소드입니다.

Parameters - Response: ResponseMessage는 StatusCode와 ResultMessage로 구성되어있습니다

+ void onPlanetXSDKException(PlanetXSDKException e)

SDK 내부에서 오류가 발생하였을 때 호출되는 메소드입니다.

Parameters - E: SDK 내부에서 발생한 오류에 대한 코드 및 메시지를 담고 있는 Exception입니다.

3. 오류

PlanetSDKException

SDK 내부에서 발생하는 오류를 반환하기 위해 설정된 Exception 클래스입니다. Open API 서버와의 통신에 있어 누락된 설정이 발생할 시에 오류를 발생시킵니다

+ PlanetXSDKException()

PlanetXSDKException 기본 생성자입니다.

+ PlanetXSDKException(String code, String message)

PlanetXSDKException 생성자입니다. 오류 코드 및 오류 메시지를 설정할 수 있습니다.

Parameters - Code: 오류 코드
- Message: 오류 코드에 대한 정보를 담고 있습니다.

+ String getCode()

오류 코드를 반환합니다. 오류 코드에 대한 내용은 Tutorial을 참조하십시오

Return : 오류코드

+ void setCode(String code)

오류 코드를 설정

Parameters - Code: 오류 코드

+ String getMessage()

오류 메시지를 반환합니다.

Return : 오류 메시지

+ void setMessage(String message)

오류 메시지를 설정합니다.

Parameters - Message: 오류 코드에 대한 정보를 입력합니다

top버튼