2

Android Video Player を使用する必要があるアプリケーションに取り組んでいます。私はこの Player に URI を与えています。これは実行される場合と実行されない場合があります。URI は、定義された手順に従って実行時に生成されます。

ビデオが再生されない場合、logcat で次のエラーが発生します。

03-30 12:58:42.918: D/MediaPlayer(4948): Couldn't open file on client side, trying server side
03-30 12:58:43.516: E/MediaPlayer(4948): error (1, -1004)
03-30 12:58:43.516: E/MediaPlayer(4948): Error (1,-1004)
03-30 12:58:43.520: D/VideoView(4948): Error: 1,-1004

このエラーを理解できません。誰かが私にこれを説明できるならお願いします。これは、(VideoPlayer の) 側の問題ですか、それともサーバー側の問題ですか..???

ビデオプレーヤーに使用しているコードは次のとおりです。

    String url = getIntent().getExtras().getString("videourl");
    VideoView videoView = (VideoView) findViewById(R.id.videoview);
    MediaController mediaController = new MediaController(this);
    mediaController.setAnchorView(videoView);
    Uri video = Uri.parse(url);
    videoView.setMediaController(mediaController);
    videoView.setVideoURI(video);
    videoView.start();

さらに、ビデオが再生されない場合、次のようなエラー ダイアログが表示されます。

「申し訳ありません。このビデオは再生できません。」と「OK」ボタンを押します。ボタンを押しても、ビューはアプリの前のウィンドウに戻らず、VideoPlayer 画面に残り、前のビューに戻るには戻るボタンを 2 回押す必要があります。どうしてそうなの..??? 説明された問題についての助けは大歓迎です。

4

1 に答える 1

4

フォーム ログ -1004 の意味: public static final int MEDIA_ERROR_IO

私にとって、これは常に機能します:

    Uri video = Uri.parse(url);
    mediaController = new MediaController(this);
    mediaController.setAnchorView(videoView);
    videoView.requestFocus();
    videoView.setMediaController(mediaController);
    videoView.setVideoURI(video);

    videoView.setOnPreparedListener(new OnPreparedListener()
    {

        @Override
        public void onPrepared(MediaPlayer arg0)
        {
            videoView.start();
        }
    });
于 2013-06-03T14:44:58.290 に答える