首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >无法运行getYouTubeService()

无法运行getYouTubeService()
EN

Stack Overflow用户
提问于 2018-05-23 23:48:16
回答 1查看 115关注 0票数 0

我正在尝试制作一个安卓应用程序,它将使用youtube data api v3,并通过将输入作为youtube频道的名称来给出结果。我已经下载了youtubeapi jar文件并将其复制到lib文件夹。另外,我已经将其作为依赖项包含到build.gradle中。但是我仍然不能运行getYouTubeService()函数/方法。我没有得到这个错误。你能帮个忙吗。mainActivity的代码如下所示。

代码语言:javascript
复制
package com.example.loveb.youtubestats;    
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import com.google.api.services.youtube.YouTubeScopes;
import com.google.api.services.youtube.model.*;
import com.google.api.services.youtube.YouTube;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.Collection;
import java.util.HashMap;
import java.util.List;
import java.util.HashMap;

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        YouTube youtube = getYouTubeService();
        try {
            HashMap<String, String> parameters = new HashMap<>();
            parameters.put("part", "snippet,contentDetails,statistics");
            parameters.put("forUsername", "Aman Dhatterwal");
            YouTube.Channels.List channelsListByUsernameRequest = youtube.channels().list(parameters.get("part").toString());
            if (parameters.containsKey("forUsername") && parameters.get("forUsername") != "") {
                channelsListByUsernameRequest.setForUsername(parameters.get("forUsername").toString());
            }
            ChannelListResponse response = channelsListByUsernameRequest.execute();
            System.out.println(response);
        }
    }
}

构建gradle文件的代码如下所示。

代码语言:javascript
复制
apply plugin: 'com.android.application'

android {
    compileSdkVersion 26
    defaultConfig {
        applicationId "com.example.loveb.youtubestats"
        minSdkVersion 15
        targetSdkVersion 26
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    implementation fileTree(include: ['*.jar'], dir: 'libs')
    implementation 'com.android.support:appcompat-v7:26.1.0'
    implementation 'com.android.support.constraint:constraint-layout:1.1.0'
    testImplementation 'junit:junit:4.12'
    compile 'com.google.apis:google-api-services-youtube:v3-rev181-1.22.0'
    androidTestImplementation 'com.android.support.test:runner:1.0.2'
    androidTestImplementation 'com.android.support.test.espresso:espresso-core:3.0.2'
    implementation files('libs/YouTubeAndroidPlayerApi.jar')
}
EN

回答 1

Stack Overflow用户

发布于 2018-09-29 07:03:40

YouTube应用程序接口库没有getYouTubeService()方法。

您可以通过声明以下函数来获取YouTube服务:

代码语言:javascript
复制
public static YouTube getYouTubeService() throws IOException {
    return new YouTube.Builder(HTTP_TRANSPORT, JSON_FACTORY, credential)
            .setApplicationName(APPLICATION_NAME)
            .build();
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50492618

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档