Aqlier/ 3月 20, 2017/ iPhone

約9か月ぶりに Xcode でiOSアプリをバージョンアップした際、アプリ申請できない現象が発生し対処をまとめました。

iOS7.1で作成したアプリをiOS8対応にバージョンアップするに当たり写真、カレンダー情報の操作が伴う場合、画面にメッセージが必要となる修正を行いました。

今回の処理では、NSPhotoLibraryUsageDescriptionNSCalendersUsageDescriptionのキーをメッセージを追加するだけの容易な修正と言えましたが…。
画面上で、NSPhotoLibraryUsageDescriptionはプロパティリストで容易に変更できましたが、NSCalendersUsageDescriptionは、何度行ってもプロパティリストで反映しないことが起こり最終的にソースを開いてようやく反映となりました。お約束の不可解な現象で納得できないこともあります。

現象1

iTunes Connect のマイAppのアクティビティメニュー(iOSビルド画面)では、upload直後に処理中となりますが一瞬で消える不可解な現象になりました。

登録したバージョンが先頭に表示されますが、一瞬で消えてなかったことになります。処理がスベッている感じの状況です。

画面上は何のメッセージもなく、未反映となります。

再度同じ状態で<Upload to App Store>ボタンでuploadすると、重複のメッセージが出ますが、このバージョンは画面上に存在しません。開発者サイドには、わかりにくい仕様です。次回の申請時は、このエラーのバージョンをカウントアップする必要があります。

タイムラグはありますが、AppleID用のメールアドレスに、メールが送られていて、原因らしきことが記載されています。今回は、NSCalendersUsageDescriptionのキー部が無いことを現しています。このエラーにおいて、開発PCとメールPCが異なるため、この原因追及に時間が掛かってしまいました。

現象2

NSPhotoLibraryUsageDescriptionの追加は問題なくinfo.plistのプロパティリストで操作できました。問題ないようであれば、Privacy-という文字に自動で変換されます。NGの場合この反映がうまくできないため、uploadでエラーになります。この時点で画面上にエラーを示すべきと言えますが…。

 

info.plistのソースを開いてNSCalendersUsageDescriptionキーの追記をします。この方法でないと、なぜか???反映されません。

対処後プロパティリストで確認すると、キーの先頭に”Privacy“が自動表示されます。(正しく反映された表示と言えます。)

上記対処を行い、申請ができました。