デバイスが iOS で実行されているかどうかを検出できますか?
概要
機能中通常、デバイスの検出よりも検出の方が優先されますが、デバイスが実行されているかどうかを判断することが必要になるシナリオもあります。 iOS.
検出方法
ユーザー エージェント スニッフィング (非推奨):
警告: ユーザー エージェント スニッフィングは信頼できない可能性があります。そして操作されやすい。ただし、従来の目的のために、次のコードを使用してユーザー エージェント文字列内の iOS をチェックできます:
var iOS = !window.MSStream && /iPad|iPhone|iPod/.test(navigator.userAgent);
プラットフォーム検出:
より堅牢な方法navigator.platform:
function iOS() { return [ 'iPad Simulator', 'iPhone Simulator', 'iPod Simulator', 'iPad', 'iPhone', 'iPod' ].includes(navigator.platform) || (navigator.userAgent.includes("Mac") && "ontouchend" in document); }
を使用したデバイス プラットフォームの検証が含まれます。このアプローチでは、iOS 上の iPad デバイスも考慮されます。 13、ユーザー エージェント文字列は MacOS と同一です。
iOS バージョンの推測:
ユーザー エージェント文字列を使用して iOS バージョンを推測できますが、注目に値します。将来非推奨になる可能性があるため、このアプローチは信頼性が低いということです。代わりに、iOS で導入された API に対する履歴チェックを使用して、OS バージョンを推測することもできます。ただし、このアプローチには信頼性の点で限界もあります。
function iOSversion() { if (iOS()) { if (window.indexedDB) { return 'iOS 8 and up'; } if (window.SpeechSynthesisUtterance) { return 'iOS 7'; } if (window.webkitAudioContext) { return 'iOS 6'; } if (window.matchMedia) { return 'iOS 5'; } if (window.history && 'pushState' in window.history) { return 'iOS 4'; } return 'iOS 3 or earlier'; } return 'Not an iOS device'; }
以上がデバイスが iOS を実行しているかどうかを確実に検出するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。