iOS 不允許 App 直接讀取短信內容(無 READ_SMS 權限),這是系統級隱私保護機制,Android 才開放此權限。
oneTimeCode 鍵盤類型系統鍵盤自動識別驗證碼短信,在鍵盤上方顯示「從訊息填入」,用戶點擊即可填入。
// UITextField / UITextView
textField.textContentType = .oneTimeCode
UITextContentType.oneTimeCode + Associated DomainsAssociated Domains:webcredentials:yourdomain.comYour code: 123456 @yourdomain.comAutomaticVerificationController(Passkeys 相關)更進階的無密碼驗證流程,超出傳統短信範疇。
Android 需聲明 READ_SMS/RECEIVE_SMS 權限,用戶授權後可在 BroadcastReceiver 中攔截解析短信,實現全自動填寫。
iOS 走「系統鍵盤輔助填寫」路線,保障隱私;Android 走「App 請求權限自動讀取」路線,靈活但風險較高。開發 iOS 時請配置 textContentType = .oneTimeCode 並優化短信文案,讓用戶體驗最順暢。