Post中的非标准URL

时间:2012-06-09 04:14:56

标签: ios facebook url-scheme

我正在开发一款通过自定义网址方案共享数据的iPhone应用。这在电子邮件中运行良好,但我很难在Facebook上获得此功能。

我想使用自定义网址方案将回调链接发布到我的应用。基本上,如果你在安装了应用程序的iOS设备上运行,我想要一个打开应用程序的链接。

我正在尝试使用Feed对话框中的属性执行此操作,但在调用对话框时出现错误:帖子的操作链接必须是有效的URL ...看来API不允许使用非标准网址在基于此的属性中 - 还有另一种方法吗?

SBJSON *jsonWriter = [SBJSON new];
NSDictionary *propertyvalue = [NSDictionary dictionaryWithObjectsAndKeys:@"Final Count", @"text", @"finalcount://somecustomstuffhere", @"href", nil];
NSDictionary *properties = [NSDictionary dictionaryWithObjectsAndKeys:propertyvalue, @"Import ", nil];
NSString *finalproperties = [jsonWriter stringWithObject:properties];
NSString *finalactions = [jsonWriter stringWithObject:actions];            
NSMutableDictionary* params = [NSMutableDictionary dictionaryWithObjectsAndKeys:
                                       kAppId, @"app_id",
                                       @"http://itunes.apple.com/us/app/final-count/id532992913?ls=1&mt=8", @"link",
                                       @"http://southwestgecko.com/wp-content/uploads/2012/05/PrimaryIcon@2x.png", @"picture",
                                       @"Final Count", @"name",
                                       @"caption", @"caption",
                                       @"description", @"description",
                                       finalproperties, @"properties",
                                       nil];
[facebook dialog:@"feed" andParams:params andDelegate:self];

1 个答案:

答案 0 :(得分:0)

这就是我最终做到的方式:

我利用了这样一个事实,即我的基于WordPress的网站将忽略普通URL之后的任何内容,并打包在那里的所有回调数据中。 Facebook应用程序非常智能,可以将完整的URL字符串转发到应用程序,我的应用程序非常智能,可以忽略属于WordPress网站的URL的第一部分。

这是我在Facebook帖子中添加的链接:

link = [NSString stringWithFormat:@"http://southwestgecko.com/?page_id=%i%@",timer.link, [self generateURLFromTimer:timer]];

其中[self generateURLFromTimer:timer]部分生成回调信息。这将从密钥@“link”下的原始问题中输入字典参数。当URL被传递到应用程序时,我只需解析指向该网站的部分并将其余部分作为回调处理(在这种情况下包括将计时器导入我的应用程序所需的所有计时器信息)。