2016年6月14日火曜日

すべてのiPhoneに対応させない

注意:結論から言うと、うまくいきませんでした。

解像度が多すぎる

アンドロイドスマホほどじゃないとは思うが、iPhoneは解像度とアスペクト比のバリエーションが多い。
執筆時現在、以下の画面サイズに対応させなければいけない。
  • RetinaのiPhone4sで640×960
  • 縦にサイズが伸びたiPhone5が640×1136
  • iPhone6では4.7インチで750×1334
  • 最新のiPhone6 Plusでは5.5インチで1242×2208

このうちiPhone4sだけは縦が短いので、うまく画面を作らないと、それ以外の画面で横がはみ出したり上下に黒い帯を表示させることになってしまう。

正直、いちいちこんないっぱい対応してられるか! と思う。
これにiPadの対応までするとなるとますますだ。(iPadはアスペクト比が一緒だからレイアウト変更などは一種類で済むが)
俺のせこいアプリなんかはiPhone4sの解像度でだけ作って、iPhone6s Plusだろうがスケーリングモードで拡大して表示してくれるとありがたい。
要はiPhoneのアプリをiPadで使う時みたいに、多少表示が粗く見えても2倍とかに拡大してくれればいいのだ。

そういう風に作れないだろうか?
さらに、それでアップルの審査をパスできるだろうか?(最低iPhone5のサイズに対応せんと怒られるのではないか?)

対応させないためには

みなさん頑張って各解像度に対応させてるのか、検索してもスケーリングモードで表示させる方法があまり出てこない。
どうやらアプリ起動時に表示されるLaunch Screen(スプラッシュスクリーンともいうのだな)をどの解像度(機種)の分をインストールするか/しないかで対応解像度を選べるらしい…ということだけ風の便りで聞いていた。


そこでLaunch ScreenにiPhone4s(3.5インチ)用のLaunchScreenだけ入れiTunesConnectにアップロードし、スクリーンショットも3.5インチ画面のみをアップロードしてみた。
しかし「審査提出」ボタンを押すと「アプリが他のサイズ用に対応してるから、それ用のスクリーンショットもアップロードしろ」と出てしまった。

チェックボックス全てOFFにしてみる

最低限のLaunch Image
XcodeのLaunchImageの画面でスクリーンショットの入ってない枠が残ってるせいかと思い、LaunchImageのインスペクタでチェックボックスを全てOFFにしてみたが、やっぱりiTunesConnectで同じエラーになる。

もしかしたらちゃんとしたやり方あるんだろうとは思うけど、近い将来サポートされなくなる3.5インチにこだわって作っててもしょうがないのであきらめることにした。
あ〜、全部の解像度対応してやりますよ! このヤロー!(TДT)(iPadを除く)

やっぱりサポートされなくなった

2016/6/14のアップルのイベントでiOS10について発表があり、iPhone4sが非対応になったようだ。
これで、若干のアスペクト比の違いはあれど全て縦長になったので(iPadを除く)、デザインはしやすくなったかな。

iPadのスケーリング表示はどうなる?

iPadってiPhoneしか対応してないアプリを使う場合、現状ではiPhone4sの解像度をスケーリング表示させてるけど、これからはどうなるんだろうな。
iPhone5の解像度をスケーリング表示するようになるの?

iPad対応版を作るんであれば、どのみち今までどおり縦長なiPhone、正方形に近いiPadの両方のデザインを作らないといけませんな。こっちはもう早くからあきらめてる。

0 件のコメント:

コメントを投稿