0

Android 用の PhoneGap Cordova 2.2.0 プラグインを作成しようとしていますが、問題が発生しており、原因がわかりません。

これが私のJSです:

PushCapure.js

var PushCapture = { 
        init : function () { 
            console.log('Attempting to call the PushCapture plugin');
            return cordova.exec(function() {
                alert('PushCapture was successful');
            }, function(error) {
                alert('PushCapture failed');
            }, "PushCapture", "capture", []);
        } 
};

これが実行したいネイティブコードです

com.ron.camanon.PushCapture.java

package com.ron.camanon;

import org.apache.cordova.api.CordovaPlugin;
import android.util.Log;

public class PushCapture extends CordovaPlugin {  

    public void capture()
    {
        Log.i("PushCapture", "PushCapture called, capture video stream intended...");
    }
} 

これは私にとってはうまくいきません。また、この行をres/config.xmlに追加しました:

<plugin name="PushCapture" value="com.ron.camanon.PushCapture"/>

プラグインを試したときに実行されるのは、エラー コールバックだけです。

私は何を間違っていますか?

これは Android 用の Cordova 2.2.0 です。

4

1 に答える 1

2

これは Android でのプラグインの動作ではありません。特定のメソッドを呼び出す iOS モデルを使用しているようです。Android では、プラグインの「メソッド」または特定のコマンドは、exec 関数内の文字列として送信されます。Android のプラグインの Phonegap チュートリアルのコード例を参照してください。

@Override
public boolean execute(String action, JSONArray args, CallbackContext callbackContext) throws JSONException {
    if ("beep".equals(action)) {
        this.beep(args.getLong(0));
        callbackContext.success();
        return true;
    }
    return false;  // Returning false results in a "MethodNotFound" error.
}
于 2012-12-09T08:02:38.610 に答える