android 在清单中声明Google API密钥(适用于YouTube API)

eqqqjvef  于 2023-01-15  发布在  Android
关注(0)|答案(1)|浏览(143)

使用maps API,我可以在manifest中声明我的密钥:

<meta-data
        android:name="com.google.android.maps.v2.API_KEY"
        android:value="AlOtOfNumBersAndLetters123" />

但在Youtube API中,我必须通过编程来完成(AFAIK):

String API_KEY = "AlOtOfNumBersAndLetters123";
youTubePlayerFragment.initialize(API_KEY, myOnInitializedListener);

我如何使用清单中声明的密钥来访问Youtube API?

ulmd4ohb

ulmd4ohb1#

您可以使用现有的元数据或在 AndroidManifest 中定义自定义元数据:

<meta-data android:name="com.my.app.myYoutubeID" android:value="AlOtOfNumBersAndLetters123" />

并在运行时使用它(用于专用元数据或现有元数据):

String API_KEY = context.getPackageManager().getApplicationInfo(context.getPackageName(),PackageManager.GET_META_DATA).metaData.getString("com.my.app.myYoutubeID");
//String API_KEY = context.getPackageManager().getApplicationInfo(context.getPackageName(),PackageManager.GET_META_DATA).metaData.getString("com.google.android.maps.v2.API_KEY"); //this will use the Maps meta-data
youTubePlayerFragment.initialize(API_KEY, myOnInitializedListener);

相关问题