0
我正在使用Facebook SDK,並且當我嘗試通過使用fb邀請深層鏈接邀請朋友通過faciss。ios fetch使用facebook sdk延遲深層鏈接始終爲空目標c
NSDictionary * getParam = @{
@"access_token":accessToken,
@"fields":@"canonical_url",
@"pretty":@(YES),
};
NSString * getCanoicalURL = [NSString stringWithFormat:@"%@/%@",FB_CANONICAL_API, fbAPILinkID];
[self GET:getCanoicalURL parameters:getParam success:^(NSURLSessionDataTask * _Nonnull task, id _Nonnull responseObject)
{
NSError *error;
FacebookLink * getResult = [MTLJSONAdapter modelOfClass:[FacebookLink class] fromJSONDictionary:responseObject error:&error];
if (error)
{
handler(nil,error);
}
else
{
handler(getResult.canonicalUrl,nil);
}
} failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error)
{
handler(nil,error);
}];
下面是我邀請朋友的方法成功地顯示:
-(void)inviteFriend:(NSString*)canonicalUrl
{
FBSDKAppInviteContent *content =[[FBSDKAppInviteContent alloc] init];
content.appLinkURL =[NSURL URLWithString:canonicalUrl];
[FBSDKAppInviteDialog showFromViewController:self withContent:content delegate:self];
}
但是,當我試圖爲延遲深層鏈接獲取它總是空:
FBSDKAppLinkUtility fetchDeferredAppLink:^(NSURL *url, NSError *error)
{
NSLog(@"fetch defer app link :%@",url);
if (error) {
NSLog(@"Received error while fetching deferred app link %@", error);
}
if (url) {
[[UIApplication sharedApplication] openURL:url];
}
}];
我使用Facebook深層連結產生轉診這樣。 https://developers.facebook.com/docs/applinks/ios。這不是確切的URL的問題,但問題是,當我試圖從Facebook服務器獲取延期鏈接時,url始終爲空。當用戶通過Facebook邀請用戶後點擊安裝按鈕時,我們正試圖獲取延期應用鏈接。 –