在YouTube上使用Google Play服务



我正在尝试使用新的Youtube API V3:https://developers.google.com/youtube/v3/在我的安卓应用程序中。

要让用户登录YouTube服务,我选择了新的Google Play服务:http://developer.android.com/google/play-services/index.html

这是我的代码:

AccountManager manageurcomptes = AccountManager.get(ActiviteGeneral.this);
Account[] comptes = manageurcomptes
                        .getAccountsByType(GoogleAuthUtil.GOOGLE_ACCOUNT_TYPE);
String jeton;
try {
    jeton = GoogleAuthUtil.getToken(ActiviteGeneral.this, comptes[0].name,
        "audience:server:client_id:xxxxxxxxxxxxxxxxxxxx.apps.googleusercontent.com");
    int i = 0;
} catch (IOException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();
} catch (GoogleAuthException e) {
     // TODO Auto-generated catch block
     e.printStackTrace();

对于GoogleAuthUtil.getToken范围参数,我遵循了Android Developper博客中的文章:"验证来自Android Apps的后端调用"http://android-developers.blogspot.fr/2013/01/verifying-back-end-calls-from-android.html 并在Google API Console上注册了我的应用程序。

我创建了一个"已安装应用程序的客户端 ID"。

结果是一个GoogleAuthException,"detailMessage"="Unknown"。

错误在哪里?

我做了一个例子,展示了如何从运行良好的Android应用程序访问YouTube API v3:

http://lookthiscode.blogspot.com.ar/2013/01/utilizando-youtube-data-api-v3-desde.html

实际上,此示例基于官方示例,该示例显示了如何从Android应用程序使用任务API。我修改了示例以使用 YouTube API 身份验证范围。

本文是西班牙语的,但您可以使用文章末尾的链接下载项目的源代码。

解决问题的主要代码如下:

// Google Accounts
credential = GoogleAccountCredential.usingOAuth2(this, YouTubeScopes.YOUTUBE, YouTubeScopes.YOUTUBE_READONLY);
SharedPreferences settings = getPreferences(Context.MODE_PRIVATE);
credential.setSelectedAccountName(settings.getString(PREF_ACCOUNT_NAME, null));
// YouTube client
service =
        new com.google.api.services.youtube.YouTube.Builder(transport, jsonFactory, credential)
            .setApplicationName("Google-YouTubeAndroidSample/1.0").build();

相关内容

  • 没有找到相关文章

最新更新