在Android中为移动应用程序编程设置phonegap需要做什么?

时间:2014-03-12 01:02:40

标签: javascript android eclipse mobile cordova

我在教程中编写了eclipse中的移动浏览器,我想在html / css / javascript中使用带有本机功能的移动应用程序的phonegap。它和jquery一样吗?我只需要在主javascript文件或html文件中加载主要的phonegap库。

我知道这是一个愚蠢的问题,但我不确定,因为我看到了很多javascript文件。我找到了主要的phonegap库文件。这就是我必须加载到我的主js文件中以获得一个有效的应用程序吗?

1 个答案:

答案 0 :(得分:0)

你需要使用cordova.exec API才能在javascript代码和android活动之间进行通信。也许这个链接可以帮到你。

http://public.dhe.ibm.com/software/mobile-solutions/worklight/docs/v610/06_05_Android_-_Adding_native_functionality_to_hybrid_application_with_Apache_Cordova_plugin.pdf

首先需要在config.xml中声明自定义插件

<feature name="CustomPlugin">
      <param name="android-package" value="com.AndroidApacheCordovaPlugin.CustomPlugin" />
</feature>

使用Java代码实现插件

public class CustomPlugin extends CordovaPlugin {

    @Override
    public boolean execute(String action, JSONArray args, CallbackContext callbackContext) 
            throws JSONException {

        if (action.equals("sayHello")){
            try {
                String responseText = "Hello world, " + args.getString(0);
                callbackContext.success(responseText);
            } catch (JSONException e){
                callbackContext.error("Failed to parse parameters");
            }
            return true;
        }

        return false;
    }
}

从JavaScript调用插件

function initial(){
    var name = $("#NameInput").val();
    cordova.exec(sayHelloSuccess, sayHelloFailure, "CustomPlugin", "sayHello", [name]);
}

function sayHelloSuccess(data){
    alert("OK: " + data);
}

function sayHelloFailure(data){
    alert("FAIL: " + data);
}