iPadOSが13から登場し、その影響でiPadにおけるUser-Agentの仕様が変わったことが話題になりました。
その中で、気になることがあったので検証してみました。
使ったのはウィルラボのUserAgent確認ツールです。
通常
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.1 Safari/605.1.15
これは話題になったもので、macOSと区別が付けられなくなったパターンですね。
サーバ側でUser-Agentを見ているサービスはこの対応で苦労しているんじゃないでしょうか。
気になったのは以下
Slide Over
Mozilla/5.0 (iPad; CPU OS 13_1_3 like MacOS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.1 Mobile/15E148 Safari/604.1
なんと、iOS
という文字列こそ無いものの、iPad
表記が現れたことでiPadであるという判定ができるようになりました。
Split View
Mozilla/5.0 (iPad; CPU OS 13_1_3 like MacOS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.1 Mobile/15E148 Safari/604.1
画面分割比が小さいウィンドウではSlide Overと同じUser-Agentになりますね。
では画面分割比を大きくするとどうなるでしょうか
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.1 Safari/605.1.15
なんと、通常時と同じmacOSのUser-Agentになりました。
考察
以上のことから、iPadではウィンドウサイズによってUser-Agentを出し分けているのではないかという説が浮上しました。
今後iPad対応アプリではこれらのマルチタスキング用画面への対応が必須になるので、開発の際は注意しておいた方がいいかもしれません。