8

このプラグインを使用して、readme.md ファイルの指示に従いました。

1)これが私のhtmlファイルです

<!DOCTYPE HTML>
<html>
<head>
    <title>TryMakan Video</title>
    <link rel="stylesheet" href="style.css" />
<script type="text/javascript" charset="utf-8" src="cordova-2.0.0.js"></script>
    <script type="text/javascript" charset="utf-8" src="video.js"></script>
    <script type="text/javascript">
function playVideo(){
            window.plugins.videoPlayer.play("http://www.trymakan.my/wp-content/uploads/2011/09/NASI-AYAM-BEREMPAH-KAJANG.mp4");
        }
 </script>
</head> <body>
<a href="#" onClick="playVideo();">play</a>
</body></html>

2) xml フォルダーにある私の plugins.xml は次のとおりです。

<?xml version="1.0" encoding="utf-8"?>
<plugins>
    <plugin name="VideoPlayer" value="com.phonegap.plugins.video.VideoPlayer"/>
</plugins>

3) VideoPlayer.java もこのフォルダー src\com\phonegap\plugins\video にコピーしました

4) さらに、プラグインを AndroidManifest.xml ファイルに追加する必要があると言う人もいるので、これはそのスニペットです

<application
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".MainActivity"
            android:configChanges="orientation|keyboardHidden|keyboard|screenSize|locale"
            android:label="@string/title_activity_main" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <action android:name="com.phonegap.plugins.video.VideoPlayer"/>
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

それでも、「再生」をクリックすると、log cat はこのエラーを返します

08-08 04:54:15.823: I/Web Console(309): Error: Status=2 Message=Class not found at file:///android_asset/www/cordova-2.0.0.js:938

update1: VideoPlayer.java はここにあります

ここ

Gen フォルダーの下に VideoPlayer.java が表示されません。コンパイルされていないということですか? これが問題でしょうか?はいの場合、どのように解決しますか?

update2: bin フォルダーを確認したところ、bin\classes\com\phonegap\plugins\video の下に VideoPlayer.class があるため、VideoPlayer.java は実際にコンパイルされています

4

3 に答える 3

6

ログに表示されるエラーが

file:///android_asset/www/cordova-2.0.0.js:938にクラスが見つかりません

最善の方法は、エラーの原因となっているクラスを確認することです。それでもこのエラーメッセージが表示される場合は、次のトリックを試してください。

  1. エディターでcordova-2.0.0.jsを開きます。
  2. 938行目のコードを置き換えます。

    console.log( "エラー:Status =" + v.status + "Message =" + v.message);

    console.log( "エラー:Status =" + v.status + "Message =" + v.message + "service =" + service + "action =" + action);

  3. アプリを再度実行し、コンソールで上記のエラーを確認します。service = XYZでエラーの原因となるプラグインを確認できます。ここで、XYZはプラグイン名です。

  4. config.xmlファイルのセクションにXYZプラグインのエントリがあるかどうかを確認します。
  5. 見つからない場合は、XYZプラグインを追加します。
于 2012-08-18T12:35:14.693 に答える
2

プラグインが見つからないため、このエラーが発生しました。追加した

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

config.xml ファイルに追加し、修正しました。

于 2013-05-20T22:25:02.347 に答える