有人可以让我知道YouTube API需要什么样的jar文件和导入库来获取查看次数

时间:2015-11-24 18:54:47

标签: android android-layout android-fragments youtube youtube-api

我正在尝试从YouTube API中查找YouTube视频的观看次数,并找到了一些代码来执行此操作。但我无法编译代码,因为它需要jar文件和导入库。请帮忙。

YouTube youtube = new YouTube.Builder(new NetHttpTransport(), new JacksonFactory(), new HttpRequestInitializer());

YouTube.Videos.List videoRequest = youtube.videos().list("contentDetails");
videoRequest.setId("SOME-VIDEO-ID");
videoRequest.setFields("items/contentDetails");
videoRequest.setKey("YOUR-API-KEY");
VideoListResponse response = videoRequest.execute(); //blocking call, ensure to perform off ui thread via AsyncTask 
List<Video> videosList = response.getItems(); 

if(videosList != null && videosList.size() > 0){
 Video video = videosList.get(0);
 VideoStatistics statistics = video.getStatistics();
 BigInteger viewCount = statistics.getViewCount();
}

下面的错误: 执行任务:[:app:generateDebugSources,:app:generateDebugAndroidTestSources,:app:assembleDebug]

按需配置是一项孵化功能。 警告:依赖org.apache.httpcomponents:httpclient:4.0.1因调试而被忽略,因为它可能与Android提供的内部版本冲突。          如果有问题,请用jarjar重新打包以更改类包 警告:依赖org.apache.httpcomponents:httpclient:4.0.1因发布而被忽略,因为它可能与Android提供的内部版本冲突。          如果有问题,请用jarjar重新打包以更改类包 :app:preBuild UP-TO-DATE :app:preDebugBuild UP-TO-DATE :应用:checkDebugManifest :app:preReleaseBuild UP-TO-DATE :app:prepareComAndroidSupportAppcompatV72310Library UP-TO-DATE :app:prepareComAndroidSupportRecyclerviewV72310Library UP-TO-DATE :app:prepareComAndroidSupportSupportV42310Library UP-TO-DATE :应用:prepareDebugDependencies :app:compileDebugAidl UP-TO-DATE :app:compileDebugRenderscript UP-TO-DATE :app:generateDebugBuildConfig UP-TO-DATE :app:generateDebugAssets UP-TO-DATE :app:mergeDebugAssets UP-TO-DATE :app:generateDebugResValues UP-TO-DATE :app:generateDebugResources UP-TO-DATE :app:mergeDebugResources UP-TO-DATE :app:processDebugManifest UP-TO-DATE :app:processDebugResources UP-TO-DATE :app:generateDebugSources UP-TO-DATE :app:preDebugAndroidTestBuild UP-TO-DATE :应用:prepareDebugAndroidTestDependencies :app:compileDebugAndroidTestAidl UP-TO-DATE :app:processDebugAndroidTestManifest UP-TO-DATE :app:compileDebugAndroidTestRenderscript UP-TO-DATE :app:generateDebugAndroidTestBuildConfig UP-TO-DATE :app:generateDebugAndroidTestAssets UP-TO-DATE :app:mergeDebugAndroidTestAssets UP-TO-DATE :app:generateDebugAndroidTestResValues UP-TO-DATE :app:generateDebugAndroidTestResources UP-TO-DATE :app:mergeDebugAndroidTestResources UP-TO-DATE :app:processDebugAndroidTestResources UP-TO-DATE :app:generateDebugAndroidTestSources UP-TO-DATE :app:processDebugJavaRes UP-TO-DATE :app:compileDebugJavaWithJavac UP-TO-DATE :app:compileDebugNdk UP-TO-DATE :app:compileDebugSources UP-TO-DATE :应用:preDexDebug AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;麻烦处理\&#34; javax / transaction / HeuristicCommitException.class \& #34;:&#34;&#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;错误使用或错误使用核心类(java。*或javax 。*)&#34;&#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;当没有建立核心库时。&#34;,&#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;这通常是由于无意中包含了核心库文件&#34;,& #34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文本&#34;:&#34;在您的应用程序\ u0027s项目中,使用IDE时(例如&#34) ;,&#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34; Eclipse)。如果您确定没有故意定义&#34;,&#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;核心课程,那么这是最有可能解释什么\ #0000s&#34; ;,&#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;继续。&#34;,&#34;来源&#34; :[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;但是,您实际上可能正在尝试在核心中定义一个类&#34; ;,&#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;名称空间,您可能已采取的来源,例如&# 34;,&#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;来自非Android虚拟机项目。这将是大多数&#34;,&#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;肯定不起作用。它至少会危及&#34;,#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;您的应用与该平台的未来版本的兼容性。&#34;, &#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;它通常也有可疑的合法性。&#34;,&#34 ;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;如果你真的打算建立一个核心库 - 只有&#34 ;,&#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;适合作为创建完整虚拟机的一部分&#34;,&#34; ;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文本&#34;:&#34;分发,而不是编译应用程序 - 然后使用&#34;, &#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34; simple&#34;,&#34; text&#34;:&#34; \&#34; - core-library \&#34;用于取消此错误消息的选项。&#34;,&#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;如果您继续使用\&#34; - 核心库\&#34;但事实上&#34;,&#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;构建应用程序,然后预先警告您的应用程序&#34;,&# 34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;在某些时候仍然无法构建或运行。请&#34;,&#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;为愤怒的客户做好准备,例如找到你的&#34;, &#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;应用程序在升级其操作后停止运行&#34;,&#34 ;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;系统。你应该为这个问题负责。&#34;,&#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;如果您合法使用某些恰好位于&#34; &#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;核心包,那么最简单的安全替代方案就是&#34;, &#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;重新包装该代码。也就是说,将有问题的课程转移到&#34;,&#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;您自己的包名称空间。这意味着他们永远不会进入&#34;,#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;与核心系统类冲突。 JarJar是一个可以帮助&#34;,#34;来源&#34;:[{}]}的工具 AGPBI:{&#34;善良&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;您正在努力。如果您发现无法执行此操作,那么&#34;,&#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;这表明您所在的路径最终会#34; &#34;来源&#34;:[{}]} AGPBI:{&#34;善良&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34;导致痛苦,痛苦,悲伤和悲伤。&#34;, &#34;来源&#34;:[{}]} AGPBI:{&#34; kind&#34;:&#34;简单&#34;,&#34;文字&#34;:&#34; 1错误;中止&#34;&#34;来源&#34;:[{}]}

FAILED

失败:构建因异常而失败。

  • 出了什么问题: 任务&#39;:app:preDexDebug&#39;。

    的执行失败
      

    com.android.ide.common.process.ProcessException:org.gradle.process.internal.ExecException:Process&#39; command&#39; /Library/Java/JavaVirtualMachines/jdk1.7.0_79.jdk/Contents /首页/斌/ java的&#39;&#39;完成非零退出值1

  • 尝试: 使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获得更多日志输出。

建立失败

3 个答案:

答案 0 :(得分:1)

这是我目前使用的(在gradle构建中)

    compile('com.google.apis:google-api-services-youtube:v3-rev144-1.20.0') {
        exclude group: 'org.apache.httpcomponents', module: 'httpclient'
    }

只需将该行粘贴到build.gradle文件中即可。

答案 1 :(得分:0)

答案 2 :(得分:0)

我可以通过只添加必需的jar文件来解决错误: 1)YouTubeAndroidPlayerApi.jar 2)google-api-services-youtube-v3-rev152-1.21.0.jar 3)google-http-client-android-1.20.0.jar 4)google-api-client-android-1.20.0.jar

构建Gradle文件

    compile 'com.google.apis:google-api-services-youtube:v3-rev152-1.21.0'