Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public class MainActivity extends AppCompatActivity implements TextureView.SurfaceTextureListener {
- private static final String TAG = "videotestmediaplayer";
- private static final String FILE_NAME = "cat.mp4"; // ваш файл
- private MediaPlayer mMediaPlayer;
- private TextureView mTextureView;
- public String folderPath,folderPath2;
- public File f;
- public Uri uri;
- public Context context;
- public Button btn;
- public Button btn2;
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_main);
- //check for permission
- if(ContextCompat.checkSelfPermission(this,
- Manifest.permission.WRITE_EXTERNAL_STORAGE) == PackageManager.PERMISSION_DENIED){
- //ask for permission
- requestPermissions(new String[]{Manifest.permission.WRITE_EXTERNAL_STORAGE}, 0);
- }
- mTextureView = (TextureView) findViewById(R.id.textureView);
- mTextureView.setSurfaceTextureListener(this);
- folderPath = Environment.getExternalStoragePublicDirectory(Environment.DIRECTORY_DOWNLOADS).getAbsolutePath();
- folderPath2 = folderPath;
- folderPath = folderPath + "/cloud0.mp4";
- folderPath2 = folderPath2 + "/cloud2.mp4";
- f = new File(folderPath);
- if (!f.exists()) {
- Log.d(TAG, "not found");}
- //uri = Uri.parse(folderPath);
- btn = (Button) findViewById(R.id.button);
- btn.setOnClickListener(new View.OnClickListener() {
- @Override
- public void onClick(View view) {
- if (mMediaPlayer.isPlaying()) {
- mMediaPlayer.stop();
- }
- try {
- Log.d(TAG, folderPath2);
- uri = Uri.parse(folderPath2);
- mMediaPlayer.setDataSource(context, uri);
- } catch (IOException e) {
- e.printStackTrace();
- }
- mMediaPlayer.prepareAsync();
- }
- });
- }
- @Override
- protected void onDestroy() {
- super.onDestroy();
- if (mMediaPlayer != null) {
- mMediaPlayer.stop();
- mMediaPlayer.release();
- mMediaPlayer = null;
- Log.d(TAG, "onDestroy");
- }
- }
- @Override
- public void onSurfaceTextureAvailable(SurfaceTexture surfaceTexture, int i, int i1) {
- Surface surface = new Surface(mTextureView.getSurfaceTexture());
- try {
- mMediaPlayer = new MediaPlayer();
- uri = Uri.parse(folderPath);
- mMediaPlayer.setDataSource(this ,uri);
- mMediaPlayer.setSurface(surface);
- context = this;
- mMediaPlayer.prepareAsync();
- Log.d(TAG, this.toString());
- mMediaPlayer.setOnPreparedListener(new MediaPlayer.OnPreparedListener() {
- @Override
- public void onPrepared(MediaPlayer mediaPlayer) {
- mediaPlayer.start();
- Toast.makeText(MainActivity.this, "Started", Toast.LENGTH_SHORT).show();
- }
- });
- mMediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
- @Override
- public void onCompletion(MediaPlayer mediaPlayer) {
- Log.d(TAG, "finished");
- if (mMediaPlayer.isPlaying()) {
- mMediaPlayer.stop();
- }
- try {
- uri = Uri.parse(folderPath2);
- mMediaPlayer.setDataSource(context ,uri);
- mMediaPlayer.prepareAsync();
- } catch (IOException e) {
- e.printStackTrace();
- }
- }
- });
- } catch (IOException e) {
- Log.d(TAG, e.getMessage());
- }
- }
- mMediaPlayer.Reset(); // <===
- mMediaPlayer.setDataSource(this ,uri);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement