Upload video on youtube from iphone app(从 iphone 应用程序在 youtube 上上传视频)

本文介绍了从 iphone 应用程序在 youtube 上上传视频的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想从我的 iphone 应用程序上传 youtube 上的视频..我试过这个 http://urinieto.com/2010/10/upload-videos-to-youtube-with-iphone-custom-app/但最后我得到了错误Domain=com.google.GDataServiceDomain Code=400 "操作无法完成.(com.google.GDataServiceDomain 错误 400.)" UserInfo=0x4d921f0 {}

I want to upload video on youtube from my iphone app.. I have tried this http://urinieto.com/2010/10/upload-videos-to-youtube-with-iphone-custom-app/ but in the end i am getting error Domain=com.google.GDataServiceDomain Code=400 "The operation couldn’t be completed. (com.google.GDataServiceDomain error 400.)" UserInfo=0x4d921f0 {}

谁能帮帮我.谢谢!!!

Can any one help me. Thanx!!!

我的代码

 NSString *devKey = [mDeveloperKeyField text];

    GDataServiceGoogleYouTube *service = [self youTubeService];
    [service setYouTubeDeveloperKey:devKey];

    NSString *username = [mUsernameField text];
    NSString *clientID = [mClientIDField text];

    NSURL *url = [GDataServiceGoogleYouTube youTubeUploadURLForUserID:username
                                                             clientID:clientID];

    // load the file data
    NSString *path = [[NSBundle mainBundle] pathForResource:@"YouTubeTest" ofType:@"m4v"]; 
    NSData *data = [NSData dataWithContentsOfFile:path];
    NSString *filename = [path lastPathComponent];

    // gather all the metadata needed for the mediaGroup
    NSString *titleStr = [mTitleField text];
    GDataMediaTitle *title = [GDataMediaTitle textConstructWithString:titleStr];

    NSString *categoryStr = [mCategoryField text];
    GDataMediaCategory *category = [GDataMediaCategory mediaCategoryWithString:categoryStr];
    [category setScheme:kGDataSchemeYouTubeCategory];

    NSString *descStr = [mDescriptionField text];
    GDataMediaDescription *desc = [GDataMediaDescription textConstructWithString:descStr];

    NSString *keywordsStr = [mKeywordsField text];
    GDataMediaKeywords *keywords = [GDataMediaKeywords keywordsWithString:keywordsStr];

    BOOL isPrivate = mIsPrivate;

    GDataYouTubeMediaGroup *mediaGroup = [GDataYouTubeMediaGroup mediaGroup];
    [mediaGroup setMediaTitle:title];
    [mediaGroup setMediaDescription:desc];
    [mediaGroup addMediaCategory:category];
    [mediaGroup setMediaKeywords:keywords];
    [mediaGroup setIsPrivate:isPrivate];

    NSString *mimeType = [GDataUtilities MIMETypeForFileAtPath:path
                                               defaultMIMEType:@"video/mp4"];

    // create the upload entry with the mediaGroup and the file data
    GDataEntryYouTubeUpload *entry;
    entry = [GDataEntryYouTubeUpload uploadEntryWithMediaGroup:mediaGroup
                                                          data:data
                                                      MIMEType:mimeType
                                                          slug:filename];

    SEL progressSel = @selector(ticket:hasDeliveredByteCount:ofTotalByteCount:);
    [service setServiceUploadProgressSelector:progressSel];

    GDataServiceTicket *ticket;
    ticket = [service fetchEntryByInsertingEntry:entry
                                      forFeedURL:url
                                        delegate:self
                               didFinishSelector:@selector(uploadTicket:finishedWithEntry:error:)];

    [self setUploadTicket:ticket];

推荐答案

首先,检查 YouTube API 是否有对其 GData 库的任何更新,(上次我使用它们时它们发生了变化并破坏了我的应用程序).

First things first, check the YouTube API for any updates to it's GData libraries, (they changed last I used them and broke my app).

http://apiblog.youtube.com/2009/02/youtube-apis-iphone-cool-mobile-apps.html

接下来,检查愚蠢的东西.是否已导入所有标题,所有内容都已签出等?

Next, check for silly stuff. Got all your headers imported, everything checks out, etc?

尝试将您的 info.plist 设置为使用 Wi-Fi,我听说一些新的 GData API 可能会解释您的 400 错误,您的应用可能无法 ping YouTube 服务器.

Try setting your info.plist to use Wi-Fi, I've heard some of the new GData API's look for that might explain your 400 error, your app might not be pinging the YouTube servers.

这篇关于从 iphone 应用程序在 youtube 上上传视频的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!