简单的VideoView方法应用+权限判断
import android.Manifest; import android.content.pm.PackageManager; import android.os.Environment; import android.support.annotation.NonNull; import android.support.v4.app.ActivityCompat; import android.support.v4.content.ContextCompat; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.view.View; import android.widget.Button; import android.widget.Toast; import android.widget.VideoView; import java.io.File; public class MainActivity extends AppCompatActivity implements View.OnClickListener{ private VideoView videoView; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); videoView= (VideoView) findViewById(R.id.videoView); Button play= (Button) findViewById(R.id.play); Button pause= (Button) findViewById(R.id.pause); Button replay= (Button) findViewById(R.id.replay); play.setOnClickListener(this); pause.setOnClickListener(this); replay.setOnClickListener(this); if (ContextCompat.checkSelfPermission(MainActivity.this, Manifest.permission. WRITE_EXTERNAL_STORAGE)!= PackageManager.PERMISSION_GRANTED){ ActivityCompat.requestPermissions(MainActivity.this,new String[]{Manifest.permission. WRITE_EXTERNAL_STORAGE},1); }else { initVideoPath();//初始化 } } private void initVideoPath() { File file=new File(Environment.getExternalStorageDirectory(),"movie.mp4"); videoView.setVideoPath(file.getPath()); } @Override public void onRequestPermissionsResult(int requestCode, @NonNull String[] permissions, @NonNull int[] grantResults) { switch (requestCode){ case 1: if (grantResults.length>0&&grantResults[0]==PackageManager.PERMISSION_GRANTED){ initVideoPath(); }else { Toast.makeText(this,"拒绝权限将无法使用此软件",Toast.LENGTH_SHORT).show(); finish(); } break; default: } } @Override public void onClick(View view) { switch (view.getId()){ case R.id.play: if (!videoView.isPlaying()){ videoView.start(); } break; case R.id.pause: if (videoView.isPlaying()){ videoView.pause(); } break; case R.id.replay: if (videoView.isPlaying()){ videoView.resume(); } break; } } @Override protected void onDestroy() { super.onDestroy(); if (videoView!=null){ videoView.suspend(); } } }