PG WORKS

PHPやLinux(サーバー)などのノウハウや、便利なツールを紹介していきます。

【Swift】iOSアプリ開発メモ

iOSアプリ(ゲーム以外)で良いところ&審査に出す前に注意する点をまとめてみました。

プロジェクト内にPodファイルを設定&設置してインストールコマンド(pod install)をながすことで利用できる。

・例)podファイルの中身
――――――――――――――――――
platform :ios, '11.0’

target ‘sampleproject’ do
use_frameworks!

pod 'Alamofire'
pod 'SDWebImage'

end
――――――――――――――――――

Alamofire:ウェブサイトとの通信で利用
SDWebImage:URLから画像を取得するのに利用

info.plist

必要な機能だけ許可したほうがいいですが、ないとアプリがリジェクトされます。
WKWebViewを使うアプリなら下記の機能は使うかも。
Privacy - Camera Usage Description
↑カメラへのアクセス許可
Privacy - Location When In Use Usage Description
↑位置情報取得のアクセス許可
Privacy - Microphone Usage Description
↑マイクへのアクセス許可
Privacy - Photo Library Usage Description
↑カメラロール内を読み込み
Privacy - Photo Library Additions Usage Description
↑カメラロールに保存
Bundle version string (short)
↑アプリを更新するたびに数値を上げる
1.0->1.1->1.2など

↓参考サイト様
https://neos21.hatenablog.com/entry/2018/06/18/080000

Deployment -> iOS Deployment Target

↑アプリが動作するiOSのバージョンを設定
他のアプリの対応バージョンを見て合わせたほうが良い。

アプリの審査

使用用途がわからないアプリの場合「App Reviewに関する情報」の所に詳細やテスト方法(ログインが必須であればログイン情報)を記載する。

他社のサイトをアプリ内に表示する場合、許可が取れている証明を説明する必要があります。

掲示板などユーザーが自由に書き込めるコンテンツがアプリ内にある場合、第三者が通報できる機能や、速やかに削除ができる対策が取られているかの確認があります。(利用規約必須です)

また、特定の単語(流行り病など)が入ってるとリジェクトされるため全て置き換えるor削除する必要があります。

アプリがクラッシュしたり、見れない画面があると確認が入ります。スクリーンショットは実際に表示されるものが必須(多言語対応している場合、言語ごとにスクリーンショットが必要)

審査通過後

スクリーンショットなど概要欄にある文章も修正もできないため再審査が必要。

審査期間

通常1~2日ほど(朝~昼に審査に出せば次の日の朝には結果が分かりました)

TestFlight

こちらも審査に1~2日ほどかかる。通知のテストが本番と同じ環境でテストできるため(リリース前に確認が可能)

その他

AdMobを使う場合「マーケティングURL」にサイトURLを設定する。

感想

審査チームはアプリの全てをチェックしているとは思えない。(例えば通知部分にバグがあっても通過する)アクセス許可の部分やコンテンツの内容をチェックしているかと思います。

リジェクトされると、英文で何がダメなのか書かれてあるが、Google翻訳で問題なし。添付画像を送ってもらえるパターンもあり。

返信する際には、英文(Google翻訳)と日本語の両方つけて送信しているが、話が通じないなどは今までになかったです。

メタデータの修正であれば、アプリを再度提出する必要はありません。
また修正してないのに審査チームの文面を無視して再申請するとアカウント停止になる可能性があるため必ず返信すること。

通知機能がある場合、年1で証明書の更新が必須(証明書を発行するためにはmacが必要になります。)