2016-11-16 82 views
0

我正在Swift 3中開發一個iOS應用程序(我是一個完整的Swift n00b。)我對外部應用程序進行身份驗證,以獲取訪問令牌,但代碼是在對外部應用進行身份驗證後,不會重定向回我的應用。重定向回Alamofire.request的應用程序

AppDelegate.swift

func application(_ application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: Any) -> Bool { 
    print(url) 
    DispatchQueue.main.async { 
     print(url.scheme) 
     if (url.scheme == "myapp"){ 
      print("i just caught a url and i feel fine and the url be says ", url) 
     } 
    } 
    return true 
} 

類處理來自外部應用程序的響應:

  Alamofire.request(url, method: .post, parameters: parameters, encoding: JSONEncoding.default) 
       .responseJSON { response in 
        print(response) 
        if((response.result.value) != nil) { 
         let swiftyJsonVar = JSON(response.result.value!) 
         if let resData = swiftyJsonVar[key].string { 
          let autostart_data = swiftyJsonVar[key].string   
... snip ... 
          let url = URL(string: "extapp:///?key=\(data!)&redirect=\(myapp)://key") 
          UIApplication.shared.open(url!, options: [:]) 
... snip ... 
         } 
        } 
      } 

是否有可能回重定向到我的應用程序,與Alamofire,一旦響應收到?我在過去兩天一直在谷歌上進行在線研究,並嘗試了很多可能的解決方案,但到目前爲止一無所獲。我會很感激任何幫助!

+0

您是將用戶重定向到Safari應用程序還是打開應用程序中的Web視圖?如果您打開Safari應用程序,重定向應該由網站完成,而不是由應用程序執行 – milo526

+0

我正在從外部auth應用程序重定向回我的原生應用程序。 – Mina

+0

你在'Info.plist'中註冊過你的應用程序嗎? – Losiowaty

回答

0

問題不在於Alamofire。這是與外部應用程序的API和我的iOS應用程序無法重定向回來。