本文共 3131 字,大约阅读时间需要 10 分钟。
播放视频
1.页面布局
2.配置权限
3.功能实现
package demo.jq.com.playvideotest;import android.content.pm.PackageManager;import android.net.Uri;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;/** * @author jim */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.video_view); 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, android.Manifest.permission.WRITE_EXTERNAL_STORAGE)!= PackageManager.PERMISSION_GRANTED) { ActivityCompat.requestPermissions(MainActivity.this,new String[]{android.Manifest.permission.WRITE_EXTERNAL_STORAGE},1); } else { initVideoPath(); } } private void initVideoPath() { try { Uri uri = Uri.parse("android.resource://demo.jq.com.playvideotest/"+R.raw.video); videoView.setVideoURI(uri); } catch (Exception e) { e.printStackTrace(); } } @Override public void onRequestPermissionsResult(int requestCode, String[] permissions, 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 v) { switch (v.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.seekTo(0); videoView.resume(); } break; default: break; } } @Override public void onDestroy() { super.onDestroy(); if (videoView != null) { videoView.suspend(); } }}
真的可以播放哦,视频资源放在raw目录下了。
本文转自TBHacker博客园博客,原文链接:http://www.cnblogs.com/jiqing9006/p/7705051.html,如需转载请自行联系原作者