PhoneGap平台提供了外掛程式功能,開發人員可以將重量級的功能封裝在原生代碼開發的外掛程式中,並將介面暴露給JavaScript,JavaScript調用外掛程式功能即可完成與本地代碼的互動。開發一個簡單的android外掛程式主要分以下幾步:
(1)編寫JAVA類,繼承CordovaPlugin類,如下:
import org.apache.cordova.api.CallbackContext; import org.apache.cordova.api.CordovaPlugin; import org.json.JSONArray; import org.json.JSONException; public class Login extends CordovaPlugin { public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException { if (action.equals("login")) { String message = args.getString(0); this.login(message, callbackContext); return true; } return false; } private void login(String message, CallbackContext callbackContext) { if (message != null && message.length() > 0) { callbackContext.success("loginSuccess"); } else { callbackContext.error("Expected one non-empty string argument."); } } }
|
(2)在config.xml 裡註冊外掛程式,如下:
(3)js調用,如下:
<script type="text/javascript" charset="utf-8"> function login(str, callback) { var exec = cordova.require('cordova/exec'); exec(callback, function(err) { callback('Nothing to echo.'); }, "Login", "login", [str]); }; function success (result) { alert("SUCCESS: \r\n"+result ); } login("para", success); </script> |
(4)列印出loginSuccess,即可成功!