我试图从我的iPhone应用程序发布到Facebook,它只是不起作用 .
这就是我在做的事情:
if (![_facebook isSessionValid])
{
NSArray *permissions = [NSArray arrayWithObjects:
@"read_stream", @"publish_stream", @"offline_access",nil];
[facebook authorize:permissions delegate:self];
}
NSMutableDictionary* params = [NSDictionary dictionaryWithObjectsAndKeys:
@"User Prompt Message", @"user_message_prompt",
@"http://www.mywebsite.com/", @"link",
@"http://mywebsite.com/wp-content/uploads/2011/05/iTunesArtwork.png", @"picture",
nil];
[facebook requestWithGraphPath:@"me/feed"
andParams:params
andHttpMethod:@"POST"
andDelegate:self];
我也试过了
[self.facebook dialog:@“feed”andParams:params andDelegate:self];
但在任何一种情况下,我的应用程序都会被终止
(FBRequest *)openUrl:(NSString *)url params:(NSMutableDictionary *)params httpMethod:(NSString *)httpMethod delegate:(id)delegate
或者在
(void)dialog:(NSString *)action andParams:(NSMutableDictionary *)params andDelegate:(id)delegate
取决于我使用此日志调用的方法:
*由于未捕获的异常'NSInternalInconsistencyException'终止应用程序,原因:' - [__ NSCFDictionary setObject:forKey:]:发送到immutable对象的mutating方法'
这对我来说没有意义,因为使用的字典是可变的 .
难道我做错了什么?任何帮助将非常感激 .
1 回答
不,他们不是 . 尽管您将返回的对象分配给
NSMutableDictionary
变量,但您在此处创建NSDictionary
:这应该是:
这可能是崩溃的原因:
因为Facebook API需要一个可变字典: