2015-10-28 5 views
2

Я попытался реализовать универсальные ссылки в своем приложении, но он не работает. Я загрузил файл apple-app-site-association на свой сервер, я могу получить к нему доступ. (MIME-тип:/JSON) Вот содержимое файла яблочно-приложение-сайт-ассоциации:iOS 9 Universal Links не работает

{ 
"applinks": { 
    "apps": [], 
    "details": [ 
     { 
      "appID": "L7LAMSGWAK.com.example.app", 
      "paths": [ 
       "*" 
      ] 
     }  ] 
} 
} 

Я включил доменов, связанных в моем приложении, и я добавил эти домены: applinks : example.com

applinks: demo.example.com

(я загрузил файл яблочно-приложение-сайт-ассоциации к домену demo.example.com тоже)

в AppDelegate .m file i написал это:

- (BOOL)application:(UIApplication *)application continueUserActivity:(NSUserActivity *)userActivity restorationHandler:(void (^)(NSArray *restorableObjects))restorationHandler { 
NSURL* openedUrl = userActivity.webpageURL; 
NSString* urlString = [openedUrl.absoluteString lowercaseString]; 
return YES; 
} 

И я установил точку останова в этот метод, чтобы проверить, вызвано ли его вызовом, но его никогда не вызывали. Если я нажму, например, на эту ссылку: https://demo.example.com/asd его просто откройте сафари, но я никогда не вижу баннер, чтобы открыть ссылку в моем приложении. Я действительно не знаю, что случилось.

+0

Вы пробовали изменения настроек для конкретных ссылок на приложения (открыть их в Safari или приложение)? Попробуйте долгое нажатие на ссылку и несколько раз выберите «Открыть в ». Это должно изменить ваши предпочтения и сделать дальнейшие ссылки открытыми непосредственно в вашем приложении. – Solomiya

+0

Я попытался написать ссылку на заметки и нажать на нее, но она всегда открывается в сафари :( – just

+0

Когда вы открываете заметки и удерживаете длинный контакт по ссылке, вы должны увидеть что-то вроде этого http://postimg.org/image/61clxa7gz. Выберите открытие в своем приложении, оно работает? – Solomiya

ответ

2

Попробуйте удалить и переустановить приложение. iOS обрабатывает связанные данные домена и пытается прочитать файл apple-app-site-association при установке приложения. Это стоит попробовать с помощью реального устройства (вместо Simulator) и проверить журналы устройств (Xcode> Window> Devices и выбрать ваше устройство). Если вы видите что-то вроде ### Rejecting URL 'https://demo.example.com/apple-app-site-association' for auth method 'NSURLAuthenticationMethodServerTrust': -6754/0xFFFFE59E kAuthenticationErr, то, вероятно, сертификат вашего сайта недостаточно хорош для iOS или есть еще одна проблема с загрузкой файла ассоциации.

1

Вид позднего ответа, но у меня была такая же проблема, когда я пытался реализовать универсальные ссылки. Решение для меня состояло в том, чтобы проверить с помощью реального устройства.

В документации Apple указано, что можно протестировать на тренажере, но с моим собственным опытом это было невозможно.

Вы можете протестировать универсальные ссылки в симуляторе или на устройстве. Source - Apple

Я также пробовал использовать Branch.io, и они заявляют, что тестирование невозможно с помощью симулятора.

Вы также должны убедиться, что вы используете устройство, которое работает IOS> = 9.2

Смежные вопросы