【问题标题】:Upload a video in specific youtube account - Android在特定 youtube 帐户中上传视频 - Android
【发布时间】:2012-07-11 18:58:47
【问题描述】:

我想创建一个应用程序,用户可以上传存储在设备上或用相机录制的视频,并自动将其上传到我拥有的特定帐户。问题是我正在尝试使用网络上的 ytdirect 教程,但 getting started tutorial 并不是那么容易解释,而且对于(我认为)可能使用 API 必须更简单的东西来说真的很复杂。

我已在此answer 上执行此步骤,这似乎是一种更好或至少更简单的方法来实现我正在寻找的使用相同的 YouTube Direct,但用 ClientLoginAuthorizer 替换 GlsAuthorizer.java。该答案中的 java 在项目中引发了一些错误(特别是在 onCreate 上的 SubmitActivity.java 中使用 GlsAuthorizer.GlsAuthorizerFactory())(1)。

我有开发者密钥和应用程序 ID,以及与之关联的 URL (xyz.appspot.com)。我不知道project (2) 中的strings.xml 中的default_ytd_domain_name 是什么。

还有其他方法可以在 YouTube 中上传视频(带有我可以使用的教程或示例代码),或者有人有更详细的步骤序列可以使用上面的第二个链接实现上传,因为我'我只错过了该答案步骤中的两 (2) 点。

【问题讨论】:

    标签: android youtube youtube-api


    【解决方案1】:

    如果它已过期,我会执行类似的操作来获取新的访问令牌。然后我将它传递回客户端并使用此令牌进行上传。

    getYoutubeToken: function() {
    
            var now = moment();
            var result;
            if (now.diff(Meteor.settings.youtube.expiration, 'minutes') >= 50) {
                console.log('Getting new access token...')
    
                var options = {
                    headers: {
                        "Content-Type": "application/x-www-form-urlencoded"
                    },
                    content: "client_secret=" + Meteor.settings.youtube.client_secret + "&grant_type=refresh_token&refresh_token=" + Meteor.settings.youtube.refresh_token + "&client_id=" + Meteor.settings.youtube.client_id
                }
    
                try {
                    result = HTTP.call("POST", 'https://www.googleapis.com/oauth2/v3/token', options);
                    Meteor.settings.youtube.access_token = result.data.access_token;
                    Meteor.settings.youtube.expiration = moment();
    
                    return Meteor.settings.youtube.access_token;
                } catch (e) {
                    // Got a network error, time-out or HTTP error in the 400 or 500 range.
                    return false;
                }
    
    
            } else {
                console.log('Returning access token...')
                return Meteor.settings.youtube.access_token;
            }
    
        }
    

    【讨论】:

      猜你喜欢
      • 2016-08-22
      • 2017-08-08
      • 2021-03-19
      • 2013-06-22
      • 2013-08-08
      • 2014-06-23
      • 2011-05-14
      • 2012-09-25
      • 1970-01-01
      相关资源
      最近更新 更多