2013-08-06 56 views
8

我想在您的Android应用程序中播放管视频YouTube Api for Android异常“service_missing”

当youtube初始化像“service_missing”时,我得到了异常。

我写下面的代码,

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); 

    } 

} 

我也给互联网用户的权限。

我在4.2.2用google API AVD测试这段代码。

机器人:的minSdkVersion = “8”

机器人:targetSdkVersion = “17”

任何一个有任何想法??

在此先感谢...

回答

17

由于the API documentation for the Youtube API状态:

YouTubeInitializationResult.SERVICE_MISSING
通过YouTube API服务缺失此设备上。

您需要将Youtube应用安装到模拟器中才能使其工作。

+0

您可以使用[Genymotion](http://genymotion.com)作为安装了Google Play服务的模拟器,它允许您获取Youtube应用程序。 – michaelcarrano