2017-02-03 6 views
2

私の質問は、YouTubeのリンクを開く方法に関する他の質問と似ていません。私の質問は、YouTubeリンクを開く方法です。その後、アプリで開くと、YouTubeアプリを終了して、MainActivityを呼び出してYouTubeアプリを開きます。しかし、これは背景から実行されている以前のYouTubeアクティビティを表示するだけではなく、恐怖からYouTubeアプリを開くべきです。アンドロイドアプリでYoutubeのビデオリンクを開くには?

MainAcitivy - > SecondActivity - > YouTubeの - > ThirdActivity - > YouTubeの

しかし、私は、YouTubeアプリを最初から再びロードします。しかし、現在、私は背景にあった以前に開いたYouTubeアプリを手に入れています。

MainActivity

Intent intent = new Intent(MainActivity.this,ThirdActivity.class); 
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK); 
startActivity(intent); 
finish(); 

SecondActivity

startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(link))); 
sleep(10000); 
Intent intent=new Intent(getApplicationContext(),ThirdActivity.class); 
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK); 
startActivity(intent); 
finish(); 

ThirdActivity

sleep(5000); 
Toast.makeText(getApplicationContext(),"third",Toast.LENGTH_SHORT).show(); 
Intent intent=new Intent(getApplicationContext(),SecondActivity.class); 
intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_NEW_TASK); 
startActivity(intent); 
finish(); 

私は最初から再びそれをするたびにロードしたいが、それは私にそれが一時停止された状態を示しています。あなたが私の質問を理解していない場合は、自由にコメントしてください。もっと詳しく説明します。前もって感謝します。

+0

を呼び出します – mayosk

答えて

1

以下のコードは、テントの意図=新しいテント(Intent.ACTION_VIEW、「ここにあなたのユーチューブのURL」)あなたの携帯電話に

をユーチューブアプリを開きます。 startActivity(インテント);

あなたの活動にURLをロードする場合のWebViewを入れて、この1つが利用可能な場合のWebViewで

4

をURLを実行し、次のコード例は、YouTubeのアプリでYouTubeのリンクを開きます、それ以外の場合は、意志ブラウザで開きます。

public static void watchYoutubeVideo(String id) { 
    Intent appIntent = new Intent(Intent.ACTION_VIEW, Uri.parse("vnd.youtube:" + id)); 
    Intent webIntent = new Intent(Intent.ACTION_VIEW, 
    Uri.parse("http://www.youtube.com/watch?v=" + id)); 
    try { 
     startActivity(appIntent); 
    } catch (ActivityNotFoundException ex) { 
     startActivity(webIntent); 
    } 
} 

編集:2番目の要件に答えるには:このコードで新しいIntentを呼び出すたびにこのビデオのアプリケーションまたはブラウザを開き、以前のビデオを表示しません。 YouTubeのビデオ

fun openYoutubeLink(youtubeID: String) { 
    val intentApp = Intent(Intent.ACTION_VIEW, Uri.parse("vnd.youtube:" + youtubeID)) 
    val intentBrowser = Intent(Intent.ACTION_VIEW, Uri.parse("http://www.youtube.com/watch?v=" + youtubeID)) 
    try { 
     this.startActivity(intentApp) 
    } catch (ex: ActivityNotFoundException) { 
     this.startActivity(intentBrowser) 
    } 

} 

を開くために

0

Kotlinのバージョンはちょうど私がそれをプログラム的にあなたの内側ユーチューブアプリの状態を制御することが可能であると思ういけない

this.openYoutubeLink("Q-dNnMlaGNg") 
関連する問題