保持APP登入的做法

看板MacDev作者 (瓶兒)時間6年前 (2017/06/21 20:29), 編輯推噓7(7022)
留言29則, 11人參與, 最新討論串1/1
大家好 有個問題想請教 目前保持登入的作法是 在登入頁面 viewdidload 這邊先確認有無之前存的帳號密碼,若有 就直接作post登入 進入內頁 這樣app離開再回來 就可以進入畫面 但有個問題是 因為APP一啓動就是登入頁面 每次APP進來 會閃過登入頁面 才進去內頁 請問有好的做法嗎? -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 39.9.199.238 ※ 文章網址: https://www.ptt.cc/bbs/MacDev/M.1498048150.A.760.html

06/21 20:38, , 1F
再 applaunch 時候判斷呢?
06/21 20:38, 1F

06/21 20:51, , 2F
帳號密碼填在輸入框就好,要按確定才登入呢?
06/21 20:51, 2F

06/21 20:53, , 3F
做一個與launch的畫面相同的viewcontroller,之後從它來
06/21 20:53, 3F

06/21 20:53, , 4F
判斷下一個畫面是誰
06/21 20:53, 4F

06/21 21:04, , 5F
是指在這viewcontroller取出帳號密碼,若沒有連至登入頁,
06/21 21:04, 5F

06/21 21:04, , 6F
有則跟server作登入,取得新token,跳至內頁嗎
06/21 21:04, 6F

06/21 21:18, , 7F
在window.rootViewController賦值前判斷,用sb請無視..
06/21 21:18, 7F

06/22 00:27, , 8F
現在還有每次都要用帳號密碼登入的做法喲!
06/22 00:27, 8F

06/22 00:28, , 9F
我會把 登入後的頁面設為首頁,如果沒帳號密碼才推回
06/22 00:28, 9F

06/22 00:28, , 10F
輸入帳密的頁面,若有 則在主頁做登入,失敗推回去
06/22 00:28, 10F

06/22 00:29, , 11F
不想閃一下也很簡單,willAppear present前一頁
06/22 00:29, 11F

06/22 00:29, , 12F
animation 設 false就好
06/22 00:29, 12F

06/22 01:50, , 13F
看你怎麼設計,不建議直接存帳密在手機
06/22 01:50, 13F

06/22 01:50, , 14F
常見流程大概就是把登入頁面獨立出來
06/22 01:50, 14F

06/22 01:51, , 15F
需要登入的功能才判斷user是否登入,再跳登入頁
06/22 01:51, 15F

06/22 03:56, , 16F
在appdelegate一開起就檢查登入狀態再看要推去哪個VC呢?
06/22 03:56, 16F

06/22 10:21, , 17F
如果使用中間斷線的話 都怎麼去做重新連線~??
06/22 10:21, 17F

06/22 10:34, , 18F
存 token,只要 token 沒過期就算登入狀態
06/22 10:34, 18F

06/22 10:34, , 19F
手機通常不建議存帳密,遺失會很麻煩
06/22 10:34, 19F

06/22 10:36, , 20F
然後要另外實作取消 token 效力的方式
06/22 10:36, 20F

06/22 10:36, , 21F
可以參考一些 oauth2 的作法
06/22 10:36, 21F

06/25 23:23, , 22F
作法不只一種,可以在AppDelegate判斷登入,用storyboard
06/25 23:23, 22F

06/25 23:24, , 23F
id做工作流的切換,或者是在主頁面ViewWillAppear的時候
06/25 23:24, 23F

06/25 23:25, , 24F
做檢查的動作,沒登入狀態就segue到登入的VC
06/25 23:25, 24F

06/25 23:25, , 25F
其他請高手補充
06/25 23:25, 25F

06/25 23:31, , 26F
上面說的第二種方法有點說錯讓人誤會,重新說一次好了
06/25 23:31, 26F

06/25 23:32, , 27F
正確版應該是把登入頁面做成storyboard的init進入點
06/25 23:32, 27F

06/25 23:32, , 28F
在ViewDidLoad的時候判斷登入狀態,若成功則segue到主功能
06/25 23:32, 28F

06/25 23:33, , 29F
另外你可以用key chain wrapper之類的東西儲存登入資訊
06/25 23:33, 29F
文章代碼(AID): #1PIcQMTW (MacDev)