我想制作从IOS应用到Facebook的实时视频流。我有两个facebook账户:第一个是注册的iOS应用程序,第二个是只用于测试的。如果我登录我的第一个帐户(在我的iOS应用程序)-我得到了所需的iOS网址和密匙的流(如所有在FB文档:https://developers.facebook.com/docs/videos/live-video-api)。但是,如果我使用第二个帐户登录,我将收到以下错误:
com.facebook.sdk:FBSDKGraphRequestErrorParsedJSONResponseKey={
body = {
error = {
code = 100;
"fbtrace_id" = Ed9BmMChIsn;
message = "(#100) No permission to perform current operation.";
type = OAuthException;
};
};
code = 400;
}, com.facebook.sdk:FBSDKGraphRequestErrorHTTPStatusCodeKey=400,我的直播代码:
- (void)enableFacebookLiveStreamingWithCompletionHandler:(void(^)(NSString* facebookStreamURL, NSString* facebookStreamKey, NSError* error))completionHandler;
{
dispatch_async(dispatch_get_main_queue(), ^{
if ([[FBSDKAccessToken currentAccessToken] hasGranted:permissionPublishActions])
{
NSString* liveVideosRequestPath = [NSString stringWithFormat:@"/%@/live_videos",[FBSDKAccessToken currentAccessToken].userID];
FBSDKGraphRequest* request = [[FBSDKGraphRequest alloc] initWithGraphPath:liveVideosRequestPath parameters:nil HTTPMethod:@"POST"];
[request startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
NSLog(@"%@",[FBSDKAccessToken currentAccessToken].permissions);
if (error)
{
if (completionHandler)
completionHandler(@"",@"",error);
}
else
{
if (completionHandler)
completionHandler(@"rtmp://rtmp-api.facebook.com:80/rtmp/",[[result objectForKey:@"stream_url"] lastPathComponent],nil);
}
}];
}
});
}P.S//非常有趣的是,尽管我在这里包含了所有的权限:https://developers.facebook.com/tools/explorer,但我还是拒绝了第二个测试帐户的访问(应用程序没有注册)!
请帮帮我。
发布于 2016-08-08 09:12:35
大多数权限都需要经过Facebook的审查,否则您只能将它们作为应用程序中具有角色的用户使用。阅读docs中的“登录审查”:https://developers.facebook.com/docs/facebook-login/review
https://stackoverflow.com/questions/37413220
复制相似问题