私はiOS開発者であり、自動アクティベーション機能を備えたモバイルアプリケーションを構築しようとしましたが、SMSメッセージを読み取る方法以上のものを見つけましたが、Appleを引き起こすプライベートAPIのみを使用しています私のアプリへの拒否。2つの質問があります。フィードバックがあれば助かります。
1- SMS拒否に直面せずにiOSプラットフォームでAppleメッセージを読み取る方法はありますか? 2-誰かがApple開発者用ドキュメントの関連セクション、iOSプラットフォームではSMSメッセージの読み取りが許可されていないことを説明するセクションを提供できますか?
ガイドラインのどこにも、SMSにアクセスできないことは明記されていません。ただし、アクセスできないのは、許可されておらず、アプリが拒否されるプライベートメソッドを使用している場合のみです。
Appleが文書化されたAPIを提供するデータにのみアクセスできます。AppleがAPIを提供しない限り、アプリのサンドボックスの外でファイルにアクセスすることはできません。それ。
[〜#〜]更新[〜#〜]
IOS 12以降Appleは、テキストフィールドのセキュリティコード(OTP-ワンタイムパスワード)の読み取りをサポートしています。
単一要素の期待値を指定しますSMSログインコード。
単一要素SMSログインフローからセキュリティコードをオートコンプリートできます:
yourSingleFactorCodeTextField.textContentType = .oneTimeCode
iOSは、UITextField、UITextView、およびUITextInputプロトコルを採用するカスタムビューでのパスワードオートフィルをサポートしています。
警告
セキュリティコード入力テキストフィールドにカスタム入力ビューを使用する場合、iOSは必要なオートフィルUIを表示できません。
からiOS 12 Appleは、UITextField
、UITextView
、およびUITextInput
protocol
。システムキーボードでtextContentType
を。oneTimeCodeに設定します
storyboard/XIB
でUITextField
/UITextView
を選択し、[属性インスペクター]をクリックします。テキスト入力特性に移動し、コンテンツタイプをクリックして、ワンタイムコードを選択して完了します。
システムキーボードでのみ機能します。したがって、カスタムキーボードの使用は避けてください。
さらに詳細については、 WWDC 2018 Session 204-Automatic Strong Passwords and Security Code AutoFill も確認して24:28 OTPの自動事前入力。