前提・実現したいこと
Android StudioとYouTube Data API v3を用いてパスタ作ったお前ボタンを作っています
参考:https://www.youtube.com/watch?v=wRthqwwhbzM&ab_channel=M
パスタボタンを押したとき動画を一時停止し流れ終わったら再び動画を再生する処理のやり方を教えてください
環境
JAVA android studio 4.2.2 APIレベル30 Youtube android player API
MainActivity.java
Java
1import androidx.appcompat.app.AppCompatActivity; 2 3import android.os.Bundle; 4import android.view.View; 5import android.widget.Button; 6import android.widget.ImageButton; 7import android.media.AudioManager; 8import android.media.MediaPlayer; 9import android.widget.Toast; 10 11import com.google.android.youtube.player.YouTubeBaseActivity; 12import com.google.android.youtube.player.YouTubeInitializationResult; 13import com.google.android.youtube.player.YouTubePlayer; 14import com.google.android.youtube.player.YouTubePlayerView; 15 16public class MainActivity extends YouTubeBaseActivity { 17 18 private static final String API_KEY="APIキー"; 19 YouTubePlayerView mView; 20 YouTubePlayer.OnInitializedListener mListener; 21 Button start; 22 ImageButton pasta; 23 private MediaPlayer mediaPlayer; 24 25 @Override 26 protected void onCreate(Bundle savedInstanceState) { 27 super.onCreate(savedInstanceState); 28 setContentView(R.layout.activity_main); 29 30 mView=findViewById(R.id.playerview); 31 start=findViewById(R.id.play); //動画をスタート 32 pasta=findViewById(R.id.pasta); //パスタ作ったお前ボタン 33 34 pasta.setOnClickListener(v -> { 35 audioPlay(); 36 }); 37 38 mListener=new YouTubePlayer.OnInitializedListener() { 39 @Override 40 public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer youTubePlayer, boolean b) { 41 youTubePlayer.loadVideo("YQSS7SgGia8"); 42 } 43 44 @Override 45 public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult youTubeInitializationResult) { 46 47 } 48 }; 49 50 51 start.setOnClickListener(new View.OnClickListener() { 52 @Override 53 public void onClick(View v) { 54 mView.initialize(API_KEY,mListener); 55 } 56 }); 57 } 58 59 private boolean audioSetUp(){ 60 boolean fileCheck=false; 61 mediaPlayer=MediaPlayer.create(this,R.raw.pasta); 62 setVolumeControlStream(AudioManager.STREAM_MUSIC); 63 fileCheck=true; 64 return fileCheck; 65 } 66 67 private void audioPlay(){ 68 if (mediaPlayer==null){ 69 if (audioSetUp()){ 70 Toast.makeText(getApplication(),"Rread audio file",Toast.LENGTH_SHORT).show(); 71 }else{ 72 Toast.makeText(getApplication(), "Error: read audio file", Toast.LENGTH_SHORT).show(); 73 return; 74 } 75 }else{ 76 77 } 78 mediaPlayer.start(); 79 mediaPlayer.setOnCompletionListener(new MediaPlayer.OnCompletionListener() { 80 @Override 81 public void onCompletion(MediaPlayer mp) { 82 audioStop(); 83 } 84 }); 85 } 86 87 private void audioStop(){ 88 mediaPlayer.stop(); 89 mediaPlayer.reset(); 90 mediaPlayer.release(); 91 mediaPlayer=null; 92 } 93 94}
試したこと 追記
開発経験がKotlinで少ししかないのでご指南お願いいたします。
回答がないのでこちらでも同じ質問をしています。
https://ja.stackoverflow.com/questions/82423/youtube-android-player-api%e3%82%92%e4%b8%80%e6%99%82%e5%81%9c%e6%ad%a2%e3%81%97%e3%81%9f%e3%81%84?noredirect=1#comment93202_82423
あなたの回答
tips
プレビュー