Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

222
Views
Los enlaces universales de la aplicación cerrada no funcionan

Tengo mi aplicación configurada para manejar enlaces universales. Manejamos la recuperación de la URL y la navegación dada la URL dentro de esta función:

 func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([UIUserActivityRestoring]?) -> Void) -> Bool { guard NSUserActivityTypeBrowsingWeb == userActivity.activityType, let url = userActivity.webpageURL else { return false } // Do navigation to correct page based on URL return true }

Esto funciona perfectamente para nosotros cuando nuestra aplicación se estaba ejecutando anteriormente en segundo plano y se toca un enlace universal.

Sin embargo, cuando elimino la aplicación por completo y hago clic en un enlace universal, esta función no parece estar ejecutándose y, por lo tanto, no maneja el enlace universal en absoluto, solo lleva al usuario a la pestaña de inicio.

Intenté obtener la URL en la application(didFinishLaunchingWithOptions:) y application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) pero ninguno de ellos parece ser llamado también .

¿Alguien tiene alguna idea sobre esto?

¡Gracias!

over 4 years ago · Santiago Trujillo
3 answers
Answer question

0

Swift 5 IOS 14 Cuando la aplicación finaliza su uso

 func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) { // Get URL components from the incoming user activity. guard let userActivity = connectionOptions.userActivities.first, userActivity.activityType == NSUserActivityTypeBrowsingWeb, let incomingURL = userActivity.webpageURL else { return } DispatchQueue.main.asyncAfter(deadline: .now() + 2) { LinkHandler.sharedInstance.handleLink(url: incomingURL) } guard let _ = (scene as? UIWindowScene) else { return } }
over 4 years ago · Santiago Trujillo Report

0

Puedes registrarte

func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions)

Puede obtener la URL consultando connectionOptions.userActivities (es un Set<NSUserActivity> ).

Obtenga la URL de webpageURL Este es el ejemplo:

 func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) { for userActivity in connectionOptions.userActivities where userActivity.webpageURL != nil { // call your universal link handler here } }

Espero que pueda ayudarte a solucionar tu problema.

over 4 years ago · Santiago Trujillo Report

0

En application(didFinishLaunchingWithOptions:) URL está dentro de una opción. Por favor, pruébalo de nuevo.

Apple docs: launchOptions Un diccionario que indica el motivo por el que se inició la aplicación (si corresponde). El contenido de este diccionario puede estar vacío en situaciones en las que el usuario inició la aplicación directamente. Para obtener información sobre las posibles claves en este diccionario y cómo manejarlas, consulte Claves de opciones de lanzamiento.

https://developer.apple.com/documentation/uikit/uiapplicationdelegate/1622921-application

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!