Comment ouvrir un point de vue spécifique contrôleur push notification reçue en swift 3
Je me suis coincé spécifiques-vue-contrôleur est de ne pas bouger quand je touche push notification d'alerte lorsque l'application n'est pas ouverte en scène totalement.
Voici mon code:
func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable: Any], fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) {
/*
fetch and add push notification data
*/
goAnotherVC()
}
func goAnotherVC() {
if (application.applicationState == UIApplicationState.active) {
/* active stage is working */
} else if (application.applicationState == UIApplicationState.inactive || application.applicationState == UIApplicationState.background) {
if (type == "1" || type == "2") {
let storyboard: UIStoryboard = UIStoryboard(name: "MyAppointments", bundle: nil)
let apptVC = storyboard.instantiateViewController(withIdentifier: "NotificationDetailViewController") as! NotificationDetailViewController
let navigationController = UINavigationController.init(rootViewController: apptVC)
self.window?.rootViewController = navigationController
self.window?.makeKeyAndVisible()
} else if (type == "3") {
let storyboard: UIStoryboard = UIStoryboard(name: "MyAppointments", bundle: nil)
let apptVC = storyboard.instantiateViewController(withIdentifier: "NotificationDetailViewController") as! NotificationDetailViewController
let navigationController = UINavigationController.init(rootViewController: apptVC)
self.window?.rootViewController = navigationController
self.window?.makeKeyAndVisible()
} else if (type == "4") {
let storyboard: UIStoryboard = UIStoryboard(name: "Enquiry", bundle: nil)
let enqVC = storyboard.instantiateViewController(withIdentifier: "EnquiryDetailViewController") as! EnquiryDetailViewController
let navigationController = UINavigationController.init(rootViewController: enqVC)
self.window?.rootViewController = navigationController
self.window?.makeKeyAndVisible()
}
}
}
Je peux obtenir de notification et appuyez sur pour déplacer spécifiques de capital-risque lorsque l'application est active. S'il vous plaît aidez-moi ce que je suis absent.
- Où avez-vous mis le code ci-dessus? Dans quelle fonction?
- à l'intérieur de
func application(_ application: UIApplication, didReceiveRemoteNotification userInfo: [AnyHashable: Any], fetchCompletionHandler completionHandler: @escaping (UIBackgroundFetchResult) -> Void) {
et j'ai abit changé à ma question.
Vous devez vous connecter pour publier un commentaire.
Lorsque vous app est dans l'état fermé, vous devriez vérifier pour le lancement de l'option en
"
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool
{"et appelez votre API.
Exemple:
Swift 4
J'ai développé cette et il fonctionne parfaitement !
Soit vous êtes à l'avant-plan, arrière-plan ou l'application est totalement fermé.
Dans AppDelegate :
Bonne chance !
Helper.instance.goToControlllerWith
!?