2015-10-27 30 views
5

iOSのfitbit login-apiとObjective Cを統合しており、コールバックURLを取得する必要があります。SFSafariViewControllerからURLを取得するには?

私は現在SFSafariViewControllerを使用していますが、ログイン後にURLを読み取ることができません。 URLをSFSafariViewControllerから取得することはできますか? SFSafariViewControllerDelegate

+0

改善されたテキストであることを覚えていません。また、質問をよりよく反映するようにタイトルを編集しました。 – Marcelo

+0

何か参考にしましたか?私がfitbit APIを調べると、UIWebViewまたはWKWebKitをログインに使用できないことが明確に述べられています。私は同じページに固執しています。 – MouseCrasher

答えて

2

あなたは助けることができる唯一の方法は、持っている:

optional public func safariViewController(controller: SFSafariViewController, didCompleteInitialLoad didLoadSuccessfully: Bool) 

をしかし、それだけでロードされる初期(最初の)URLに呼び出されます。あなたがリダイレクトを持っていて、認証プロセスでいくつかのURLを待つなら、それは助けにならないでしょう。 その後、UIWebViewを使用してUIWebViewDelegateデリゲートメソッドを実装する必要があります

optional public func webView(webView: UIWebView, shouldStartLoadWithRequest request: NSURLRequest, navigationType: UIWebViewNavigationType) -> Bool 

をしかし、それは非常に混乱したように、読みやすくするためATS

+0

Fitbitがoauth2 https://dev.fitbit.com/docs/oauth2/のUIWebViewを明示的に禁止していることを除いて - SFSafariViewControllerを使用しなければならず、完了後にサーバ/ Webサービスに対してpingを実行して成功したかどうか –

+0

@DavidGlanceおそらく 'WKWebView'を使用して強制したいからです – Nico

関連する問題