CordovaPlugin 에서 상속받은 클래스의 멤버함수인 excute의 json을 처리할수 있는 스펙은 아래와 같습니다.
public boolean execute(String action, JSONArray args,
final CallbackContext callbackContext)
1. js 에서 넘어온 인자 받기
args 에 배열의 첫번째로 넘겨온 json object를 얻으려면 아래 와 같이 해줍니다.
JSONObject json = args.getJSONObject(0);
get 함수로 각각의 json object 의 멤버변수들을 얻어올수 있습니다.
Log.d(TAG, "pi : " + json.get("pi"));
Log.d(TAG, "number : " + json.get("number"));
Log.d(TAG, "msg : " + json.get("msg"));
각 변수들은 기본적으로 String 형으로 받아지기 때문에 int 형을 처리 해주려면 타입 캐스팅을 해줍니다.
(Integer) json.get("number") + 1
2. js 로 결과값을 인자로 넘겨주기
먼저 넘겨줄 빈 json 오브잭트를 만듭니다.
JSONObject resultJSON = new JSONObject();
put 함수로 값을 체워 넣습니다.
resultJSON.put("result", "ok");
resultJSON.put("msg", "json echo!!");
전송하기전에 먼저 PluginResult 객체에 담아줍니다.
PluginResult plugin_result = new PluginResult(Status.OK, resultJSON);
콜백컨텍스트의 sendPluginResult 함수로 js 측으로 결과 값을 전달합니다.
callbackContext.sendPluginResult(plugin_result);
3. 예제 실행법
파일을 다운받습니다.
코도바 프로잭트를 생성하고 안드로이드 플랫폼을 추가합니다.
압축을 푸시고 로컬에서 다음과 같이 플러그인을 추가 합니다.( 플러그인의 경로가 ../plugin_sample/echo 이라고 가정)
cordova plugin add ../plugin_sample/echo
js 쪽 예제는 첨부된 파일의 index.html을 참고 하시면됩니다.
'html5' 카테고리의 다른 글
cordova-pulgin-whitelist 사용법 (0) | 2015.11.29 |
---|---|
crosswalk 사용기 1차 (0) | 2015.11.22 |
How to make cordova 3.X plugin (only android) (0) | 2014.06.08 |
querySelector 팁 몇가지 (0) | 2014.04.05 |
cordova 3.X 사용방법정리 (0) | 2014.01.27 |