咱们产品有android的client java jar包, 用户能够调用此 client code来和咱们的server通讯. 同时用PhoneGap包装了一下咱们的java code, 提供js的接口.javascript
简化咱们项目包含的代码, 与pg相关的部分以下:
1. 一个phonegap plugin:html
public class MyPhG extends CordovaPlugin { @Overrided public boolean execute(String action, JSONArray args, final
CallbackContext callbackContext) throws JSONException {
try { // 根据action调用咱们的 接口方法 callbackContext.success(result + ""); return true; } catch (Exception e{ callbackContext.error(e.toString()); } } @Override public void onDestroy(){ /* 释放资源 */ } @Override public void initialize(CordovaInterface cordova, webView) { /* 初始化 */ } }
2. 一个PhoneGap的示例程序:java
打包上述plugin code, 和咱们的client java 包, cordova.jar一块儿放到{AND_PROJECT}/libs.android
修改{AND_PROJECT}/res/xml/config.xml, 加入:web
<feature name="MyPhG"> <param name="android-package" value="com.brayden.MyPhG" /> </feature>
修改{AND_PROJECT}/asserts/www/index.htmlide
<script type="text/javascript" charset="utf-8" src="cordova.js" /> <script type="text/javascript"> cordova.exec(s_onSuccessFin,s_onFailureFin,"MyPhG","funtion1",args); </script>
cordova.js放入{AND_PROJECT}/asserts/www/index.htmlspa