【发布时间】:2011-04-05 13:23:46
【问题描述】:
我想使用 ios-sdk 在 facebook 上上传视频
我检查有问题的讨论 iPhone Facebook Video Upload 并尝试在我的应用程序中实现它
我尝试你的代码但没有成功
- 我下载你的代码https://github.com/zoul/facebook-ios-sdk
- 将 FBVideoUpload.h/m 类从您的 src 添加添加到我的项目中
-
在 FBConnect.h 中包含“FBVideoUpload.h”
- 然后我编码上传视频如下
这是代码
FBVideoUpload *upload = [[FBVideoUpload alloc] init];
upload.accessToken = facebookObj.accessToken;
upload.apiKey = fbAppKey;
upload.appSecret = fbAppSecret;
NSString *filePath = @"/Users/pratgupta/Library/Application Support/iPhone Simulator/4.1/Media/DCIM/100APPLE/IMG_0010.M4V";
NSURL *fileURL = [NSURL fileURLWithPath:filePath];
NSData *data = [NSData dataWithContentsOfFile:filePath];
NSMutableDictionary *params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
data, @"",
@"test", @"title",
@"upload testing", @"description",
@"EVERYONE", @"privacy",
nil];
[upload startUploadWithURL:fileURL params:params delegate:self];
但在日志中出现错误,即
无法从访问令牌中检索会话密钥。
这是由于
if ([self sessionID] == nil) {
NSLog(@"Unable to retrieve session key from the access token);
return;
}
在 FBVideoUpload 类中
为了登录,我正在使用此代码
fbPermissions = [[NSArray arrayWithObjects:
@"read_stream", @"offline_access", @"publish_stream",nil] retain];
facebookObj = [[Facebook alloc] initWithAppId:fbAppId];
[facebookObj authorize:fbPermissions delegate:self];
我可以从 facebook 获取我的更新,所以这里的会话正常。
你能告诉我我做错了什么吗?
编辑
在更改了 zoul 建议的登录步骤后,我现在没有收到 sessionID 错误日志。我的请求现在正在发送到 fb 服务器,但得到了这个响应
<?xml version="1.0" encoding="UTF-8"?>
<error_response xmlns="http://api.facebook.com/1.0/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://api.facebook.com/1.0/ http://api.facebook.com/1.0/facebook.xsd">
<error_code>100</error_code>
<error_msg>privacy must contains a valid privacy 'value'</error_msg>
<request_args list="true">
<arg>
<key>description</key>
<value>upload testing</value>
</arg>
<arg>
<key>privacy</key>
<value>EVERYONE</value>
</arg>
<arg>
<key>v</key>
<value>1.0</value>
</arg>
<arg>
<key>api_key</key>
<value>[here is my API key]</value>
</arg>
<arg>
<key>method</key>
<value>facebook.video.upload</value>
</arg>
<arg>
<key>session_key</key>
<value>c4ada192feb82e8f239a283d-555042146</value>
</arg>
<arg>
<key>sig</key>
<value>8255d4cc3838b278b26fbfc8c86818a3</value>
</arg>
<arg>
<key>title</key>
<value>test</value>
</arg>
</request_args>
</error_response>
阿米特巴坦
【问题讨论】:
标签: cocoa-touch facebook iphone-sdk-3.0