Итак, у меня есть сценарий. Пользователь установил Whatsapp
в свой телефон. Но в настоящее время не вошли в систему.
При совместном использовании из приложения я представляю UIActivityViewController
с форматированным текстом для обмена. Поделиться отлично работает на почту, заметки и т. Д. c. пока пользователь не выберет Whatsapp
. После выбора WhatsApp из UIActivityViewController
контроллер активности закрывается, а остальная часть приложения перестает отвечать на запросы.
let activityViewController = UIActivityViewController(activityItems: [activityItem], applicationActivities:nil)
// Anything you want to exclude
activityViewController.excludedActivityTypes = [
UIActivity.ActivityType.postToWeibo,
UIActivity.ActivityType.print,
UIActivity.ActivityType.assignToContact,
UIActivity.ActivityType.saveToCameraRoll,
UIActivity.ActivityType.addToReadingList,
UIActivity.ActivityType.postToFlickr,
UIActivity.ActivityType.postToVimeo,
UIActivity.ActivityType.postToTencentWeibo,
UIActivity.ActivityType.airDrop,
UIActivity.ActivityType.openInIBooks
]
if #available(iOS 11.0, *) {
activityViewController.excludedActivityTypes?.append(UIActivity.ActivityType.markupAsPDF)
}
self.present(activityViewController, animated: true, completion: nil)
В иерархии представлений, которую я мог видеть, есть SLRemoteComposeViewController
и SLComposeViewController
, отображаемые поверх пользовательского интерфейса моего приложения. с clear
фонами. Вот скриншот.
![enter image description here](https://i.stack.imgur.com/pjPM0.png)
Я пытался добавить UIActivityViewController
completionWithItemsHandler
, но код там никогда не выполнялся.
activityViewController.completionWithItemsHandler = {(activity: UIActivity.ActivityType?, completed: Bool, returnedItems: [Any]?, error: Error?) in
print(error?.localizedDescription)
}
У меня тот же сценарий с Facebook
. Как только пользователь выбирает Facebook
из UIACtivityViewController
, пользователю выводится предупреждение о том, что ему необходимо сначала войти в систему.
Итак, что можно сделать в случае Whatsapp
?
РЕДАКТИРОВАТЬ: Заметил такую же ошибку в приложении Youtube. В обход своего пользовательского общего ресурса, нажав More
и выбрав Whatsapp
из UIActivityViewController
, приложение YouTube перестает отвечать.