Запуск содержащего приложение из UIWebView на настраиваемой клавиатуре

Поскольку вы можете использовать только обычный маршрут для запуска содержащего приложения из расширения Today, а не пользовательской клавиатуры, я пытался сделать хакерскую версию запуска UIWebView и запуска содержащего приложения через его схему URL-адресов. В основном получал помощь из этого сообщения: запуск приложения с пользовательской клавиатуры iOS8, но мне не разрешено комментировать ответы, так как я новичок в переполнении стека.

В любом случае, сделав это сейчас, UIWebView появляется, но показывает пустой белый квадрат и не запускает схему URL. Уже пытался получить доступ к схеме URL из Safari, и я знаю, что приложение запускает, поэтому не уверен, почему оно ничего не делает. Код, который у меня есть сейчас в методе, следующем при нажатии правой клавиши:

let urlkey = NSURL(string: "MYAPP://")
let webAppView = UIWebView(frame: CGRectMake(0, 0, 100, 100))
let request = NSURLRequest(URL: urlkey!)
webAppView.loadRequest(request)
self.view.addSubview(webAppView)

Любые идеи о том, почему ничего в представлении не загружается, или другие способы запустить содержащееся приложение с настраиваемой клавиатуры приветствуются. Использование XCode 6.3 и Swift.


person user3516214    schedule 03.05.2015    source источник


Ответы (1)


Невозможно запустить другое приложение через расширение клавиатуры.

Другие расширения, такие как today-widget-extension, можно использовать, как показано ниже.

NSURL *pjURL = [NSURL URLWithString:@"hostingapp://home"];
[self.extensionContext openURL:pjURL completionHandler:nil];
//https://stackoverflow.com/questions/24019820/today-app-extension-widget-tap-to-open-containing-app

но в расширении клавиатуры ничего не происходит.

//Наверное...

Если вам удастся реализовать запуск приложения на клавиатуре, клавиатура не будет принята Apple.

Обновлено 15.09.14:

openURL не работает в Action Extension

Я обнаружил, что некоторые люди пробуют это, так что проверьте это.

Некоторые сказали, что их приложение принято Apple (я не знаю, что это правда).

person Jeonghan Joo    schedule 08.05.2015