###実現したいこと
アプリを開いた時点で、sessionIDを保有していれば、そのまま指定の画面にいく方法が知りたいです。
###現状・状況
アプリを開くと、下記のメニュー画面が開くという構成で、「サービスとは」を押すとXcode内のサービス説明の別ページに飛びます。「ログイン」を押すと、WebViewのページが開き、アプリにアクセスし、ログイン画面になります。
WebViewページでは、初回はアカウント登録するためのIDとパスワードを入れる画面になりますが、
以前にログインしていると、自動でサービス画面に入ります。
しかし、このような状況ですと、アプリを閉じる度に、メニュー画面が表示されてしまいます。
ログインボタンを押すと、IDとパスワードをいれずに自動でサービスに入れる点においては良いのですが、
アプリを閉じて、開く度に毎回メニュー画面が出てくるのを避けたいです。
そこで、アプリを開いた時点で、sessionIDを保有していれば、メニュー画面ではなく、webview画面に飛ばせないかと思いました。
###コード
swift
1func webView(_ webView: WKWebView, didFinish navigation: WKNavigation!) { 2 let cookieStore = webView.configuration.websiteDataStore.httpCookieStore 3 cookieStore.getAllCookies() { (cookies) in 4 for cookie in cookies { 5 if cookie.domain == "www.xxxxxx" && 6 cookie.name == "SESSION_ID" { 7 // UserDefaultsに保存 8 let cookieData = NSKeyedArchiver.archivedData(withRootObject: cookie) 9 UserDefaults.standard.set(cookieData, forKey: "Cookie") 10 UserDefaults.standard.synchronize() 11 } 12 } 13 } 14 }
したいことと状況がわかりにくくて申し訳ありません。
本件ご存知の方いらっしゃればお教え頂ければ幸いです。
また、別の方法でのやりかたでもっといい方法があるよ!などあればお教え頂ければと存じます。
宜しくお願いします。
あなたの回答
tips
プレビュー