iOSの常識クイズ3問

**Q1. iOS 9を切れば、3.5inch端末のサポート切れる？**<br>
**Q2. コードでアプリを終了させる場合、審査が必ず通らない?**<br>
**Q3. カメラを本来の用途(画像や動画の撮影)以外に使用した場合、審査は必ず通らない?**

thinking time…🤔
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
## Q1. iOS 9を切れば、3.5inch端末のサポートを切れる？
**答えは🙅(切れない)**

iPhone 4sは、iPhoneで出た最後の3.5inch端末であり、iOS 9が最終サポートのということもあり今では見かけなくなった端末です。
そのため、iOS9を切ることで、3.5inch端末のサポートしなくていいと思われています。

ところが、iPhoneアプリはiPadで互換表示することが出来、この時の表示サイズが3.5inchとなっています(例外としてiPad Pro 12.9inchのみ4.7inchで表示)。

この機能により、iOS 10以上のiPhoneアプリでもiPad上で3.5inchサイズで動作するため正常動作しないアプリはRejectされます。

[App Store審査ガイドライン - 2.4 ハードウェアの互換性](https://developer.apple.com/jp/app-store/review/guidelines/#hardware-compatibility)の2.4.1にも、**ユーザーがアプリケーションを最大限に活用できるよう、iPhone向けのアプリケーションは可能な限りiPadでも実行できるようにしてください。**とあります。

以下、そのあたりの話や事象に関連するリンク

* [iOS 10時代であっても3.5inchスクリーンは無視しない方が良い話と、古い実機なしでさっとレイアウトを確認する方法](https://qiita.com/usagimaru/items/dbd9ed49b04e113eb6de)

* [App Store rejected application which is not supporting for iPad even its support for only iPhone](https://stackoverflow.com/questions/44538798/app-store-rejected-application-which-is-not-supporting-for-ipad-even-its-support?utm_medium=organic&utm_source=google_rich_qa&utm_campaign=google_rich_qa)

* [リジェクト物語](https://www.slideshare.net/KeietsuYasuhara/ss-85092127)の16P目

<br>
ちなみに、3.5inchの画面サイズをサポートから完全に消せるのは、iOS 11以下を切り捨てた時です。

* [iOS 12におけるiPadのiPhone互換表示の調査結果](https://qiita.com/aryzae/items/ab602ebf77119f03d811)

<br>
## Q2. コードでアプリを終了させる場合、審査が必ず通らない?
**答えは🙅(通る方法もある)**

iOSで昔から絶対やってはいけないこととして、コードによるアプリの終了がありました。

しかし、それは昔の話で、いつからかは不明ですが、以前は[iOS Human Interface Guidelines](https://tableless.github.io/exemplos/pdf/guidelines-interface-mobiles/MobileHIG.pdf)に**Don’t Quit Programmatically**とありましたが、今の[Human Interface Guidelines](https://developer.apple.com/ios/human-interface-guidelines/overview/themes/)や[App Store審査ガイドライン](https://developer.apple.com/jp/app-store/review/guidelines/)から同様の項目は見つけられませんでした。(見落としていたらすみません。御一報ください。)

また、いくつかの配信されているアプリでは、実際にコードでアプリを終了させている例があります。

* [みずほ銀行アプリのアプリ終了ボタンによる終了](https://twitter.com/henumohe/status/1142530894151872512)
* [Instagramの言語変更による再起動](https://twitter.com/_mono/status/944178694049771520)
* [[iOS]アプリを終了する処理について](http://cheesememo.blog39.fc2.com/blog-entry-253.html)

ただ、実際にアプリに終了コードを含ませるとRejectされる可能性は孕むため、今でも必要がない限りは避けた方がいいかもしれません。

<br>
## Q3. カメラを本来の用途(画像や動画の撮影)以外に使用した場合、審査は必ず通らない?
**答えは🙅(通る場合もあれば通らない場合もある)**

カメラは写真または動画を撮るものです。その用途以外で使用した場合、AppleからRejectされるでしょうか？

これは[App Store Review Guidelines - 2.5 Software Requirements](https://developer.apple.com/jp/app-store/review/guidelines/#software-requirements)の2.5.9を満たしているかどうかで変わります。

以下は、本来の用途とは違う使い方をしているが、審査を通過したものとRejectになったものです。

* カメラで脈拍を測る -> 審査OK
[App Store - Cardiio](https://itunes.apple.com/jp/app/cardiio-%E5%BF%83%E6%8B%8D%E6%95%B0%E8%A8%88-7%E5%88%86%E9%96%93-%E3%82%A8%E3%82%AF%E3%82%B5%E3%82%B5%E3%82%A4%E3%82%BA/id542891434?mt=8)

* カメラをボタンとして利用する -> Reject
[Apple、AstroHQがiPadを液タブ化するAstropadやLunaに採用を予定していたカメラボタンをリジェクト](https://applech2.com/archives/20171101-rip-camera-button-for-astropad-studio.html)

前者は、カメラの本来の用途から外れるものの、レンズ越しに取得した画像の分析をしているだけで、**音量を上げる／下げる、サウンドオン／オフといった標準スイッチの機能、および他のネイティブユーザーインターフェイスの要素やその挙動を変更または無効にするアプリケーション**には該当しないと判断されたようです。

一方で後者は、カメラがボタンとして機能していることが**挙動の変更**と扱われ、Rejectされているようです。視線やウィンクでページをめくれる電子書籍リーダーがApp Storeにありますので、ボタンのようにカメラをタップさせるのがダメだったと思われます。

---

古くからある常識もいつのまにか変わっていることがあるため、情報のアンテナを張って脳内情報を更新していきたいですね。