【问题标题】:Implementing java code for youtube-android api为 youtube-android api 实现 java 代码
【发布时间】:2014-11-27 15:40:35
【问题描述】:

我正在构建一个使用 youtube API 的 android 应用程序。我已经了解了 youtube API 的流程,但我不知道如何开始在 java 中构建它。我对使用 API 完全陌生。有人可以提供一个方向吗?

【问题讨论】:

    标签: youtube-api android-youtube-api


    【解决方案1】:

    请遵循此方法。首先,您应该尝试从以下链接下载适用于 Android 的 Youtube 播放器库:

    Youtube Android Player

    你应该首先像这样安装它:项目->菜单:文件>结构>依赖选项卡>添加->库依赖

    如果不起作用,请尝试以下两种方法之一:

    在你使用的库的 build.gradle 文件中添加库的依赖,并将你的库粘贴到外部库中。

    只需转到 app 文件夹中的 libs 文件夹,然后将所有 .jar 例如库文件粘贴到那里 现在这里的技巧是现在进入 settings.gradle 文件现在在 include '之后添加这一行 include ':app:libs':应用程序'它肯定会工作。

    那么,你应该有这样的布局:

    <com.google.android.youtube.player.YouTubePlayerView
        android:id="@+id/player_view"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"/>
    

    你可以有这样的玩家活动:

    import android.os.Bundle;
    import android.util.Log;
    import android.webkit.WebView;
    import android.webkit.WebViewClient;
    import android.widget.Toast;
    import com.google.android.youtube.player.YouTubeBaseActivity;
    import com.google.android.youtube.player.YouTubeInitializationResult;
    import com.google.android.youtube.player.YouTubePlayer;
    import com.google.android.youtube.player.YouTubePlayerView;
    import com.google.api.client.http.HttpRequest;
    import com.google.api.client.http.HttpRequestInitializer;
    import com.google.api.client.http.javanet.NetHttpTransport;
    import com.google.api.client.json.jackson2.JacksonFactory;
    import com.google.api.services.youtube.YouTube;
    import java.io.IOException;
    
    public class YoutubeActivity extends YouTubeBaseActivity{
    
        private YouTubePlayerView playerView;
        private YouTube youtube;
    
        @Override
        protected void onCreate(Bundle bundle) {
            super.onCreate(bundle);
    
            setContentView(R.layout.activity_youtube);
    
            youtube = new YouTube.Builder(new NetHttpTransport(),
                    new JacksonFactory(), new HttpRequestInitializer() {
                @Override
                public void initialize(HttpRequest hr) throws IOException {}
            }).setApplicationName(this.getString(R.string.app_name)).build();
    
    
            playerView = (YouTubePlayerView)findViewById(R.id.player_view);
            playerView.initialize("Your API Key", new YouTubePlayer.OnInitializedListener() {
                @Override
                public void onInitializationSuccess(YouTubePlayer.Provider provider, YouTubePlayer youTubePlayer, boolean b) {
                    if(!b){
                        String videoId = getIntent().getExtras().getString("videoID");
                        youTubePlayer.cueVideo(videoId);
                    }
                }
    
                @Override
                public void onInitializationFailure(YouTubePlayer.Provider provider, YouTubeInitializationResult youTubeInitializationResult) {
                    Toast.makeText(getApplicationContext(), getString(R.string.failed), Toast.LENGTH_LONG).show();
                }
            });
        }
    
    }
    

    【讨论】:

    • 如果您想在商店发布应用,您必须禁用 youtube 视频播放,否则应用将被拒绝
    猜你喜欢
    • 1970-01-01
    • 2012-12-05
    • 1970-01-01
    • 1970-01-01
    • 2016-02-24
    • 2015-02-19
    • 1970-01-01
    • 1970-01-01
    • 2015-07-14
    相关资源
    最近更新 更多