是否可以动态链接到“同步”?

时间:2019-04-04 01:40:04

标签: ios objective-c firebase-dynamic-links

goo.gl不再可用 所以我决定使用动态链接。

我的代码要求同步缩短URL结果。

我尝试使用dispatch_semaphore_t

我希望以这种方式流动 //数字1 ==> //数字3 ==> //数字2 ==> //数字4

但是我的代码 //数字1 ==> //数字3 ==>不再响应。

// number 1

    __block NSURL * getUrl = nil;

    [linkBuilder shortenWithCompletion:^(NSURL * _Nullable shortURL,
                                         NSArray<NSString *> * _Nullable warnings,
                                         NSError * _Nullable error) {

    // number 2
        if (error || shortURL == nil)
            getUrl = [NSURL URLWithString:[longUrl stringByAddingPercentEncodingWithAllowedCharacters:[NSCharacterSet URLQueryAllowedCharacterSet]]];
        else
            getUrl = shortURL    ;
        dispatch_semaphore_signal(semaphore);
    }];

     // number 3
    dispatch_semaphore_wait(semaphore, DISPATCH_TIME_FOREVER);
     // number 4
    return getUrl.absoluteString;


I wish my code run
// number 1 ==> // number 3 ==> // number 2 ==>// number 4

please help me

0 个答案:

没有答案