Я использую опцию отложенного глубокого связывания (DDL) AppLinks Facebook, чтобы передать некоторую пользовательскую информацию о глубоких ссылках при установке. Получив триггер DDL, я вызываю определенный внешний URL-адрес для регистрации активности DDL, используя простой вызов stringWithContentsOfURL. По какой-то необъяснимой причине в URL-адрес автоматически добавляется параметр «al_applink_data», хотя я его не добавлял (я добавляю только «deeplink» и «idfa» вручную). Как он «вводится» в мой URL-вызов? Вот код триггера DDL:
- (void) onFbDeferredAppLink:(NSURL*)deeplink error:(NSError*)error {
NSLog(@"onFbDeferredAppLink: %@", deeplink);
NSMutableDictionary* d = [NSMutableDictionary dictionaryWithObjectsAndKeys:
deeplink, @"deeplink",
[self getIdfa], @"idfa"
, nil];
dispatch_async(dispatch_get_global_queue( DISPATCH_QUEUE_PRIORITY_DEFAULT, 0),
^{
NSError* error = nil;
__block NSMutableString* s = [NSMutableString stringWithString:@"https://api.myservers.com/test.php?a=b"];
[d enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) {
[s appendFormat:@"&%@=%@", [key description], [obj description]];
}];
NSURL* url = [NSURL URLWithString:s];
[NSString stringWithContentsOfURL:url encoding:NSUTF8StringEncoding error:&error];
});
Подробнее здесь: https://stackoverflow.com/questions/319 ... tentsofurl