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