0

アプリに 30 秒の無料プレビューがある動画を用意したいのですが、1 つは完全な動画で、もう 1 つは 30 秒のセクションの 2 つの個別の動画を作成する代わりに、30 秒の再生後に動画を簡単に停止するにはどうすればよいですか?

これは、オーディオまたはビデオを再生するために使用するコードのブロックです

    @Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    /** REMOVE TITLE **/
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    setContentView(R.layout.moveplay);
    overridePendingTransition(R.anim.fadein, R.anim.fadeout);

    final VideoView audioView = (VideoView) findViewById(R.id.VideoView);
    final MediaController mediaController = new MediaController(this);
    mediaController.setAnchorView(audioView);

    Bundle extras = getIntent().getExtras();
    String pathfile = extras.getString("key");
    Log.v("key = ",pathfile);

    Uri audio = Uri.parse(pathfile);
    audioView.setMediaController(mediaController);
    audioView.setVideoURI(audio);
    audioView.start();

SD カードから再生するかストリーミングするかを決定するアプリの別のセクションがあり、すべて正常に動作します。

ビデオの最初の 30 秒またはビデオ全体が再生されるようにフラグを設定したいだけです。

画面をタップするとコントローラーが表示され、カウンターが表示されることはわかっています。現在の位置が 30 に達したときに停止するだけでよいので、両方のビデオを 1 つだけ使用してリソースを節約できます。

ありがとうジェフ

4

1 に答える 1

1

ステップ #1:postDelayed()または何かを使用して、1 秒ごとに制御を取得します。

ステップ #2: getCurrentPosition()30 代のマーカー ポイントに近いかどうかを確認します。その場合は、ビデオ ビューを停止します。
再生されたビデオの進行状況を判断するためのコードは、このリンクにあります。

于 2013-01-20T09:13:36.937 に答える