Big*_*old 22 java android youtube-api gradle android-studio
所以,我目前正在闲暇时使用android编程,我正在使用android studio作为我的首选.我目前正在尝试使用youtube api创建一个非常简单的应用程序.我的问题是我无法弄清楚如何将api实际应用到我的应用程序中.我已经使用文件>项目结构将东西添加到我的应用程序中,但这本身并不起作用.它停止向我大吼大叫语法错误,但是当它编译错误时.
我研究了一下,发现我需要在build.gradle或settings.gradle(或两者)中添加内容,但我还没有找到确切的答案.到目前为止,我所尝试的一切都没有奏效.所以,如果有人可以向我解释我必须做什么,或者将我链接到一个地方,它解释该怎么做那将是伟大的
- 编辑 -
我现在很困惑.我开始了一个新项目.我添加了libs,它仍然可以编译.然后我添加了导入并且它引发了错误.然后我将这些添加到build.gradle中,它能够完美地编译
compile fileTree(dir: 'libs/youtube', include: '*.jar')
compile fileTree(dir: 'libs/youtube/libs', include: '*.jar')
Run Code Online (Sandbox Code Playgroud)
但是当我添加这个需要库的代码时
/** Global instance of the HTTP transport. */
private static final HttpTransport HTTP_TRANSPORT = new NetHttpTransport();
/** Global instance of the JSON factory. */
private static final JsonFactory JSON_FACTORY = new JacksonFactory();
/** Global instance of Youtube object to make all API requests. */
private static YouTube youtube;
Run Code Online (Sandbox Code Playgroud)
语法很好但是在编译它时会引发错误
Gradle: Execution failed for task ':Apitest:dexDebug'.
> Failed to run command:
Run Code Online (Sandbox Code Playgroud)
接下来是大约100行文件位置
关于我做错了什么的任何想法?
Evg*_*urg 40
只需在gradle文件中添加此依赖项:
compile 'com.google.apis:google-api-services-youtube:v3-rev181-1.22.0'
Run Code Online (Sandbox Code Playgroud)
并使用YouTube对象.
参考:https: //developers.google.com/api-client-library/java/apis/youtube/v3
Ana*_*thi 14
第1步:从https://developers.google.com/youtube/android/player/downloads/下载YoutubeAndroidPlayerApi.jar
第2步:将其粘贴到项目的app文件夹中的libs文件夹中
第3步:将以下行添加到项目的app文件夹中的build.gradle:
compile files('libs/YouTubeAndroidPlayerApi.jar')
Run Code Online (Sandbox Code Playgroud)
步骤4:将以下导入添加到扩展YouTubeBaseActivity
和实现的活动YouTubePlayer.OnInitializedListener
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.android.youtube.player.YouTubePlayer.Provider;
Run Code Online (Sandbox Code Playgroud)
第五步:内部OnCreate
方法:
//Make sure you initialize youtube player
YouTubePlayerView youTubeView = (YouTubePlayerView) findViewById(R.id.youtube_view);
youTubeView.initialize(YoutubeAPIKey, this);
Run Code Online (Sandbox Code Playgroud)
当YouTubeAPIKey
你从谷歌控制台您的Web模式寄存器您的项目后得到的,不选择像Android或任何移动领域
步骤6:覆盖接口中的方法,实现方式如下:
@Override
public void onInitializationFailure(Provider arg0,
YouTubeInitializationResult error) {
// TODO Auto-generated method stub
Toast.makeText(this, "Oh no!
"+error.toString(),Toast.LENGTH_LONG).show();
}
@Override
public void onInitializationSuccess(Provider arg0, YouTubePlayer player,
boolean arg2) {
// TODO Auto-generated method stub
player.loadVideo(VIDEO_ID);
}
Run Code Online (Sandbox Code Playgroud)
从RESTful调用Youtube API获取VIDEO_ID:" https://www.googleapis.com/youtube/v3/search ",其中包含在GET中传递的合适参数,如"q,relevantLanguage,type,key"等.
归档时间: |
|
查看次数: |
29797 次 |
最近记录: |