本文实例为大家分享了android实现播放网络视频的具体代码,供大家参考,具体内容如下

87f5dd5e5284a07e9bb5f633ffc9641a.gif

PlayVideoActivity.java

package cn.edu.zufe.app002;

import android.Manifest;

import android.content.pm.PackageManager;

import android.net.Uri;

import android.os.Bundle;

import android.view.View;

import android.widget.Button;

import android.widget.Toast;

import android.widget.VideoView;

import androidx.annotation.NonNull;

import androidx.appcompat.app.AppCompatActivity;

import androidx.core.app.ActivityCompat;

import androidx.core.content.ContextCompat;

public class PlayVideoActivity extends AppCompatActivity implements View.OnClickListener{

private VideoView vvVideo;

private Button btnPlay;

private Button btnPause;

private Button btnReplay;

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_play_video);

vvVideo = (VideoView) findViewById(R.id.vv_video);

btnPlay = (Button) findViewById(R.id.btn_play);

btnPause = (Button) findViewById(R.id.btn_pause);

btnReplay = (Button) findViewById(R.id.btn_replay);

btnPlay.setOnClickListener(this);

btnPause.setOnClickListener(this);

btnReplay.setOnClickListener(this);

if(ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) {

ActivityCompat.requestPermissions(this, new String[] {Manifest.permission.WRITE_EXTERNAL_STORAGE}, 1);

} else {

initVideoView();

}

}

private void initVideoView() {

vvVideo.setVideoPath("http://jackie.vaiwan.com/cn.edu.zufe.app002/zhecai.mp4");

}

@Override

public void onClick(View v) {

switch (v.getId()) {

case R.id.btn_play:

if(!vvVideo.isPlaying()) {

vvVideo.start();

}

break;

case R.id.btn_pause:

if(vvVideo.isPlaying()) {

vvVideo.pause();

}

break;

case R.id.btn_replay:

if(vvVideo.isPlaying()) {

vvVideo.resume();

}

break;

default:

break;

}

}

@Override

public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) {

super.onRequestPermissionsResult(requestCode, permissions, grantResults);

switch (requestCode) {

case 1:

if(grantResults.length > 0 && grantResults[0] == PackageManager.PERMISSION_GRANTED) {

initVideoView();

} else {

Toast.makeText(this, "没有足够的权限", Toast.LENGTH_SHORT).show();

finish();

}

}

}

}

activity_play_video.xml

xmlns:app="http://schemas.android.com/apk/res-auto"

xmlns:tools="http://schemas.android.com/tools"

android:layout_width="match_parent"

android:layout_height="match_parent"

android:orientation="vertical"

tools:context=".PlayVideoActivity">

android:layout_width="match_parent"

android:layout_height="400dp"

android:id="@+id/vv_video" />

android:layout_width="match_parent"

android:layout_height="wrap_content">

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:text="播放"

android:id="@+id/btn_play" />

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:text="暂停"

android:id="@+id/btn_pause" />

android:layout_width="0dp"

android:layout_height="wrap_content"

android:layout_weight="1"

android:text="重播"

android:id="@+id/btn_replay" />

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐