咱們產品有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