58

公式の Phonegap.com サイト (Android を使い始める) の Phonegap のチュートリアルに従いました。

すべての手順に従ってプロジェクトを作成しました。

  1. アクティビティを作成し、「DroidGap」から拡張し、onCreate() から loadURL メソッドを追加しました。
  2. それぞれのフォルダーに cordova-2.0.0.js と cordova-2.0.0.jar を追加しました。
  3. jar ファイルをビルド パスに追加しました
  4. htmlタグからjsファイルをロード
  5. AndroidMainfeast.xml から権限を追加
  6. 「configs.xml」を含むxmlフォルダーをコピーしました

今、どこに問題があるのか​​ わかりません。スクリーンショットに示すように、以下のエラーが表示されています ここに画像の説明を入力

ここに私のHTMLファイルがあります

<!DOCTYPE html>
<html>
  <head>
    <title>Notification Example</title>

    <script type="text/javascript" charset="utf-8" src="cordova-2.0.0.js"></script>
    <script type="text/javascript" charset="utf-8">

    // Wait for Cordova to load
    //
    document.addEventListener("deviceready", onDeviceReady, false);

    // Cordova is ready
    //
    function onDeviceReady() {
        // Empty
    }

    // Show a custom alert
    //
    function showAlert() {
        navigator.notification.alert(
            'You are the winner!',  // message
            'Game Over',            // title
            'Done'                  // buttonName
        );
    }

    // Beep three times
    //
    function playBeep() {
        navigator.notification.beep(3);
    }

    // Vibrate for 2 seconds
    //
    function vibrate() {
        navigator.notification.vibrate(2000);
    }

    </script>
  </head>
  <body>
    <p><a href="#" onclick="showAlert()">Show Alert</a></p>
    <p><a href="#" onclick="playBeep()">Play Beep</a></p>
    <p><a href="#" onclick="vibrate()">Vibrate</a></p>
  </body>
</html>

何かアドバイス?ありがとう!

4

13 に答える 13

64

そうではありconfig.xmlませんconfigs.xml

ログによると、アプリ ディレクトリにこのファイルがありませんres/xml。これはディストリビューションの一部として含まれているlib/android/res/xml/config.xmlので、そのファイルをディレクトリにコピーres/xmlすれば準備完了です。

于 2012-08-13T17:04:34.703 に答える
42

この質問に対する彼の回答で aharris88 と同じように、Phonegap 3.0 から移行した後、Android 開発電話でCordova 3.1.0を使用すると、[CORDOVA] Error initilizing Cordova: Class not foundエラー メッセージが表示されました。

config.xmlディレクトリ内のファイルをいじって/platforms/android/res/xmlも役に立ちませんでした。上記の Stackoverflow の回答に基づいて、Android プラットフォームのサポートを再インストールして「最初からやり直す」ことを試みました。

cordova platform rm android
cordova platform add android

このステップの後、それは再び機能し、cordova build android && cordova run androidそれ以上の問題は発生しませんでした.

于 2013-10-19T16:41:52.427 に答える
15

削除したプラグインが原因で、このエラーが発生しました。追加した

<plugin name="Device" value="org.apache.cordova.Device"/>

config.xml ファイルに再度追加すると、修正されました。

于 2013-05-20T22:28:29.223 に答える
8

次のプラグインがありません:

<plugin name="Device" value="org.apache.cordova.Device"/>

あなたはそれを間に入れなければなりません<plugins></plugins>。お気に入り

<plugins>
    <plugin name="Device" value="org.apache.cordova.Device"/>
</plugins>
于 2013-07-19T08:29:31.267 に答える
6

phonegap 3.x を使用してこの問題が発生しましたが、問題は phonegap がプラグインを適切にインストールしていなかったか、途中で台無しになっただけであることが判明しました。基本的に、プラグインをインストールしてプラットフォーム用にビルドすると、plugins/org.apache.cordova.core.specific-plugin/www から JavaScript ファイルが取得され、platforms/android/assets/www/plugins/org.apache に配置されます。 cordova.core.specific-plugin/www を実行し、Java ファイル (または iOS の場合は Objective C) を取得し、platforms/android/src/org/apache/cordova/specificplugin に配置します。

これらはすべて plugins/org.apache.cordova.core.specific-plugin/plugin.xml で指定されています。plugins.xml を見ると、次のように表示されます。

<source-file src="src/android/NetworkManager.java" target-dir="src/org/apache/cordova/networkinformation" />

これは、platforms/android/src/org/apache/cordova/networkinformation に NetworkManager.java があることを示しています。そして、そのファイルは plugins/org.apache.cordova.core.network-information/src/android/NetworkManager.java からコピーできます

これはすべて、プラットフォーム フォルダーに触れることなく、自動的に行われるようになっています。ただし、問題が発生した場合は、正しいファイルを正しいフォルダーに手動でコピーすることで修正できます。

于 2013-09-18T23:42:04.247 に答える
2

phonegap コマンド ラインを使用する場合、次の手順でこれを解決できます。

  1. merges/android、platforms/android、plugins/android.json を削除します。

  2. 走るphonegap local build android

于 2014-04-10T16:08:47.613 に答える
2

クラスが見つからないという同じ問題がありました。確認すべき問題の 1 つは、ビルド時に android.json (または ios.json) ファイルが更新されていることを確認することです。私のは事実上空でした。また、他の投稿で言及されているように、プラグインを削除して追加し直してください。最後に、私にとってうまくいったことは、config.xmlで参照されているプラ​​グインが修正されたことを確認することでした:

<feature name="Device">
  <param name="android-package" value="org.apache.cordova.device.Device"/>
</feature>
<feature name="Camera">
  <param name="android-package" value="org.apache.cordova.camera.CameraLauncher"/>
</feature>
<feature name="Notification">
  <param name="android-package" value="org.apache.cordova.dialogs.Notification"/>
</feature>

「device.Device」の二重命名と、「camera」および「dialogs」プラグインのサブクラス化にも注意してください。これは、Phonegap のドキュメントで適切に参照されていません。

于 2014-05-09T15:35:59.253 に答える
1

Visual Studio 2015 で cordova を使用すると、「Cordova の初期化中にエラーが発生しました: クラスが見つかりません」という同じエラーが発生しました。私はすべてについて試しました。cordova platform rm/add androidx1000 回から、手動でプラグインを削除して再追加するまで、何もうまくいかないようです。

ここに画像の説明を入力

次に、taco.json ファイルの cordova-cli を 5.3.3 から 5.4.0 に変更し、デバイスで実行しました。最後に、これで問題全体が修正されました。その後、cordova のバージョンを 5.3.3 にダウングレードしました (5.4.0 のバージョンは、現在 adb ブリッジではサポートされていません)。やってみて!

于 2016-01-25T09:40:15.023 に答える
1

だから、自殺に近づいた後、私はcordovaバージョン5.3.3とcordova-androidバージョン5.0.0を使用していたことがわかりました。どういうわけか、互換性がないか、バグがある可能性があるかどうかわからないので、フォールバックしますコルドバアンドロイド4.1.1へ

  cordova platform rm android
  cordova platform add android@4.1.1 

そしてこれは私を救った

于 2015-11-17T16:44:48.310 に答える
0

同じエラーが発生しました。Cordova プラグイン リストを確認しました。

私のAndroidプロジェクトディレクトリでコマンド「cordova plugin list」を実行すると、「org.apache.cordova.device」プラグインが見つからないことがわかりました。

「Cordova plugin add cordova-plugin-device」を使用して更新したところ、エラーはなくなりました。

于 2015-07-28T07:55:54.480 に答える
0

これは、cordova プラグインのパスが IONIC が期待するものとは異なるために発生する可能性があります。

プラグイン ソース フォルダー内のファイルplugin.xmlを修正する必要があります。

<config-file target="app/src/main/res/xml/config.xml" parent="/*">

次のようにする必要があります。

 <config-file target="res/xml/config.xml" parent="/*">

Android Studio Logcat 内でそのエラーを検索しようとすると、通常、次のようなものが見つかります。

io.ionic.starter E/chromium: [ERROR:service_manager.cc(156)] Connection InterfaceProviderSpec prevented service: content_renderer from binding interface: blink::mojom::BudgetService exposed by: content_browser
2019-02-22 13:40:06.144 30230-30258/com.android.webview:sandboxed_process0 E/chromium: [ERROR:BudgetService.cpp(167)] Unable to connect to the Mojo BudgetService.
于 2019-02-22T12:57:14.133 に答える