ガランチュ 1.1が最新のガラポンTVのファームウェアで動かなくなっていたのでアップデートした。残念ながら仕様変更のお知らせはファームウェアアップデートの1週間後くらいの事後報告だったので対応が遅くなってしまった。iOSの場合は審査で7-10日くらいかかってしまうので、2,3週間は前に通知してもらえないとどうしようもない。
API仕様書も知らない間に更新されているようなので、対策するにはこちらから定期的にウォッチしていかないといけなさそう。
2.0との分岐
実はガランチュ 2.0でiPhone対応をしようとしていて、Andriodで言うFragmentのようにStoryboardとChildViewControllerを使って画面のコンポーネントを共有化しようとリファクタリングしていたので、1.1のコードベースからピンポイント修正して1.1.1を作成することにした。
Xcodeを最新にしていたため最新のSDKでビルドするとiOS8での画面回転周りで問題が起きるのでiOS8対応も必要になってしまった。依存しているライブラリの一つがiOS 6.1以上だったので最低バージョンをiOS 6.1にあげた。そもそもiPadは初代がiOS5で、それ以降はiOS8まであげられるのであまりiOS6にこだわる必要はないんだけど今回はHotfixということで手間を掛けたくない、大きな変更は加えたくないという判断。
UIBackgroundModesでReject
最初の提出でRejectされてしまった。UIBackgroundModes
にaudio
に設定しているけどBackgroundで音鳴んねーぞって怒られた。
これ設定していたころも謎だったんだけど plist ファイルに
<key>UIBackgroundModes</key>
<array>
<string>audio</string>
</array>
って設定してあってもXcode上でみると
App plays audio or streams audio/video using AirPlay
って表示されるので、AirPlay対応したときにとりあえず入れていた記憶がある。でもドキュメント読み直して見てもAirPlayについては何も書いていない。
設定削除してもAirPlayは普通に動いたし、Background再生は対応していないので要らない設定だと判断した。UIBackgroundModes
の項目を削除したら審査は通った。
そもそも前のバージョンから同じ設定をしていたけど審査は通っていた、iOS8でBackground周りの機能が変わっているからApp Storeのテスト項目が増えてしまったのかな。。。その辺が最近App Storeの審査が長いというのにつながっているのかもしれない。ちなみに今回は最初の提出が3/11でRejectが3/19だったので8日くらいかかった。でも一時期、1週間以内の時があったから遅いと感じるだけでよく考えるとこれくらいが普通なのかな。