I want to play you tube video in my android application
I got exception while youtube initialization like "service_missing".
I write following code,
package com.example.youtubedemo;
import android.os.Bundle;
import android.view.Menu;
import android.widget.Toast;
import com.google.android.youtube.player.*;
import com.google.android.youtube.player.YouTubePlayer.OnInitializedListener;
import com.google.android.youtube.player.YouTubePlayer.Provider;
public class MainActivity extends YouTubeBaseActivity implements OnInitializedListener{
static private final String DEVELOPER_KEY = "MY API KEY";
static private final String VIDEO = https://www.youtube.com/watch?v=d6XXgeAkBfQ&list=PLWz5rJ2EKKc9Wam5jE-9oY8l6RpeAx-XM";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
YouTubePlayerView youTubeView = (YouTubePlayerView)
findViewById(R.id.youtube_view);
youTubeView.initialize(DEVELOPER_KEY, MainActivity.this);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public void onInitializationFailure(Provider arg0,YouTubeInitializationResult error) {
Toast.makeText(this, "Oh no! "+error.toString(),Toast.LENGTH_LONG).show();
Toast.makeText(this, ""+YouTubeInitializationResult.SERVICE_MISSING,Toast.LENGTH_LONG).show();
}
@Override
public void onInitializationSuccess(Provider arg0, YouTubePlayer player,
boolean arg2) {
player.loadVideo(VIDEO);
}
}
I had also given INTERNET users permission.
I test this code in 4.2.2 With google API AVD.
android:minSdkVersion="8"
android:targetSdkVersion="17"
Any one have any idea??
thanks in advance...
The issue with Android 11 is the os is restricting access to other apps. https://developer.android.com/training/basics/intents/package-visibility
Add the following to manifest tag in AndroidManifest to fix YouTube issue:
<queries>
<intent>
<action android:name="com.google.android.youtube.api.service.START" />
</intent>
</queries>
As the API documentation for the Youtube API states:
YouTubeInitializationResult.SERVICE_MISSING
The YouTube API service is missing on this device.
You'll need to install the Youtube app into the emulator to make it work.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With