したがって、私は現在Android自分の自由な時間のプログラミングをいじっています。私はAndroid studioを私の選択として使用しています。現在、 YouTube APIを使用して非常にシンプルなアプリを作成します。私の問題は、実際にAPIをアプリケーションに取り込む方法がわからないことです。ファイル>プロジェクト構造を使用してアプリケーションにコンテンツを追加しましたが、それだけでは機能しません。構文エラーについて怒鳴り止まりますが、コンパイルするとエラーになります。
私はこれを少し調べて、build.gradleまたはsettings.gradle(または両方)にものを追加する必要があることを発見しましたが、何をすべきかについての明確な答えを見つけていません。これまでに試したすべてが機能しませんでした。 SO誰かが私に何をしなければならないかを説明したり、何をすべきかを説明している場所に私をリンクしたりできるなら
-編集-
私は今とても混乱しています。新しいプロジェクトを始めました。私はライブラリを追加しましたが、それでもコンパイルできました。次にインポートを追加したところ、エラーが発生しました。次に、これらをbuild.gradleに追加すると、完全にコンパイルできました
compile fileTree(dir: 'libs/youtube', include: '*.jar')
compile fileTree(dir: 'libs/youtube/libs', include: '*.jar')
しかし、ライブラリを必要とするこのコードを追加したとき
/** 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;
構文は問題ありませんでしたが、コンパイル時にエラーが発生しました
Gradle: Execution failed for task ':Apitest:dexDebug'.
> Failed to run command:
その後、約100行のファイルの場所が続きました
私が間違っていることについてのアイデアはありますか?
この依存関係をgradleファイルに追加するだけです:
compile 'com.google.apis:google-api-services-youtube:v3-rev181-1.22.0'
youTubeオブジェクトを使用します。
リファレンス: https://developers.google.com/api-client-library/Java/apis/youtube/v
ステップ1: https://developers.google.com/youtube/Android/player/downloads/ からYoutubeAndroidPlayerApi.jarをダウンロードします
ステップ2:プロジェクトのappフォルダー内のlibsフォルダーに貼り付けます
ステップ3:プロジェクトのappフォルダーのbuild.gradleに次の行を追加します。
compile files('libs/YouTubeAndroidPlayerApi.jar')
ステップ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;
ステップ5:OnCreate
メソッドの内部:
//Make sure you initialize youtube player
YouTubePlayerView youTubeView = (YouTubePlayerView) findViewById(R.id.youtube_view);
youTubeView.initialize(YoutubeAPIKey, this);
プロジェクトをWebモードで登録した後、GoogleコンソールからYouTubeAPIKey
を取得する場合は、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);
}
VIDEO_IDがYoutube APIへのRESTful呼び出しからフェッチされる場所: " https://www.googleapis.com/youtube/v3/search "適切なパラメーターがGETに渡され、 "q、relevanceLanguage、type 、キー」など.