4

Android 用の Cordova (バージョン 4.0.0) を使用してハイブリッド アプリを構築しています。

プロジェクトにPushPlugin ( https://github.com/phonegap-build/PushPlugin ) を追加しました。登録中にエラーハンドラーに移動し、「クラスが見つかりません」と表示されます。

私はさまざまな提案を試しました

  • xml にプラグイン参照を追加しました。実際、プラグイン参照は config.xml ファイルに既に存在します。
  • CLI を使用してプラグインを直接インストールします (cordova プラグイン追加 https://github.com/phonegap-build/PushPlugin.gitと、cordova プラグイン追加 com.phonegap.plugins.pushplugin を試しました)。
  • 新規プロジェクトなどを作成します。
  • PushNotification.js は html ( <script type="text/javascript" src="js/PushNotification.js"></script>) に追加され、次の場所にあります。www/js/

しかし、それでも「クラスが見つかりません」という同じメッセージが表示されます

PushPlugin で使用されるデバイス、ファイル、メディアなどのサポート プラグインをインストールしました

この問題の解決策をお持ちの方がいらっしゃいましたらアドバイスをお願いいたします。

コードサンプル:

document.addEventListener("deviceready", onDeviceReady, false);

var pushNotification;
function onDeviceReady() {
    //Push notification
    pushNotification = window.plugins.pushNotification;
    pushNotification.register(successHandler, errorHandler, {"senderID":"xxxxxxxxxx", "ecb":"onNotification"});
}
4

1 に答える 1

2

最後に、Google Play サービスライブラリをプロジェクトに追加することで、これが機能するようになりました

手順:

  • google-play-services_lib フォルダーをANDROID SDK /extras/google/google_play_services/libproject/プロジェクト myproject/platform/androidフォルダーにコピーします。
  • build.xmllocal.properties 、および project.propertiesファイルをmyproject/platforms/android/CordovaLibフォルダーからmyproject/platforms/android/google-play-services_libフォルダーにコピーします
  • フォルダー内のproject.propertiesファイルを開く myproject/platforms/android/google-play-services_lib
  • プロジェクトのターゲットが android 19 かどうか、つまり target=android-19 かどうかを確認します。そうでない場合は、次のように変更します target=android-19
  • フォルダーからproject.propertiesを開き、myproject/platform/android次のように参照 2 を追加します。 target=android-19 android.library.reference.1=CordovaLib android.library.reference.2=google-play-services_lib

  • CLI で、プロジェクトの google-play-services_lib フォルダーに移動して実行します

    android update project -p .

  • に続く、 ant debug ant release

  • エラーが発生した場合は、最初に実行してant clean debugから再度実行します ant debug ant release

  • CLI で、次myproject/を使用してプロジェクトに移動してビルドしますcordova build android

この情報は別の投稿から入手しました。これは、同様の問題を抱えている他の人にとって役立つと思いました。

于 2015-01-06T15:14:35.223 に答える