2.23のガイドラインはアプリの機能に関するガイドラインで
アプリはiOS Data Storage Guidelinesに従わなければならない。
従わなければリジェクトされます。
というもの。iOS Data Storage GuidelinesはiCloudでのデータの扱い方を定義するもので、iCloud for Developersに詳細が記載されている。iOSのiCloud対応は2011年10月だが、翌11月にiOS 5.0.1がリリースされた。5.0.1はバグフィックス版だがiTunesに接続しなくても、iOSのアップデートが可能になった。つまり、5.0.1以降はiTunesを持っていなくても、iPhoneのiOSをアップデートできるようになったわけである。つまりiPhoneだけでデータやアプリのアップデートが可能になった。
iCloudでのデータ処理はiOS 5.0.1で大きく変更されて、必要なデータのみをiCloudにアップロードする方式になった。iTunesとの同期する場合は、データ量が多くてもかまわないが、iCloudではか細い回線でバックアップしなければならない。そうすると、iCloudと同期するデータは最低必要限度にしたいということなる。5.0まではiCloudに対応しても、同期データはアプリ丸ごとだったのである。
5.0.1ではアプリ内のすべてを同期させず、アプリ内で追加されたデータや変更されたデータのみをiCloudに転送して同期することになった。そのためアプリ内で生成されるデータ処理が厳格になった。iOS Data Storage Guidelinesに従わずアプリ内で生成されたデータを指定外のディレクトリに配置すると、それだけでリジェクトされるようになったのである。(下記のアスキーの記事を参照ください)
◆使い勝手向上! iOS 5.0.1で密かに変わった「iCloud」
http://ascii.jp/elem/000/000/653/653640/
5.0.1以降、2.23リジェクトが適用されることが多くなった。しかしどうも今年の8月くらいからさらに厳しく審査されるようになった。SakuttoBookでも8月から9月にかけて2.23でリジェクトされるアプリが出てきた。SakuttoBookではアプリ内のPDFを表示するとき、いったん別のディレクトリに保存して使っていた。それがiOS Data Storage Guidelinesに違反していたらしい。
ところが興味深いのは、同じSakuttoBookのバージョンでもすべてがリジェクトされているわけではなく、申請がそのまま通りリジェクトされないことも多々あった。2.23でリジェクトされたアプリは
Xcode 4.5.x
を使っていたのである。4.3や4.4でビルドしてアプリはリジェクトされなかったのだ。実際Xcode 4.5でビルドし2.23でリジェクトされたアプリを、4.4でビルドして申請していただくとすんなりと審査は通過した。つまり、4.5でビルドした場合のみ2.23でリジェクトされたのである。
ところが、アプリ内課金版は4.4でビルドして再申請してもリジェクトされてしまった。アプリ内課金版はiOS Data Storage Guidelinesに準拠していない部分があったようで、iOS Data Storage Guidelinesに対応するようにSakuttoBookをアップデートした。そうしてやっとSakuttoBookは2.23ではリジェクトされないようになった。
ただしネックがないわけではない。iCloudのデータ処理は5.0と5.0.1では大きく変わっていて、アプリの作成ではいずれのバージョンでも使えるようにするのが難しくなった。iOS Data Storage Guidelinesに準拠するためには、5.0以前のバージョンと互換性をとることが難しなってしまった。いままでSakuttoBookは4.3と5.0にも対応していたが、iOS 4.3とiOS 5.0は切り捨てることにした。そうしないとアプリが2.23でリジェクトされてしまうからである。
iCloudは5GBまでは無料だが、それ以上になると費用がかかる。便利だと思って使っていると5GBくらいはあっという間であろう。iCloudの費用は
・10 GB 追加 (合計 15 GB):年間 1,700 円
・20 GB 追加 (合計 25 GB):年間 3,400 円
・50 GB 追加 (合計 55 GB):年間 8,500 円
となっているが、便利かどうかは個人差があるだろう。保険と同じで事故に遭わないと有り難みがわからないものかもしれない。
SakuttoBookはiOS Data Storage Guidelinesに対応した。2.23でリジェクトされたアプリも新しいバージョンで審査が通っている。アプリ内課金版でXcode 4.5でビルドしたものでもリジェクトされることなくApp Storeに並ぶようになった。
しかしiOSのツール開発には課題が尽きない。昨年は2.20リジェクト旋風で多くの出版社が挫折し、今年は夏前にリストアリジェクト、10.6リジェクトと続き、iCloud対応の2.23で審査が厳しくなった。あとは偽課金サーバ対策があるが、一応SakuttoBookは組み込んだので、コードに過誤がない限り大丈夫だろう。
はてさて次のiTunes Connectの課題は何だろうか。iOSデバイスが普及すればするほど、アプリ審査のハードルは高くなりそうである。SakuttoBookはリジェクトされても必ず蘇るiPhoneアプリ作成ツールではあるが、リジェクトの方向性を見極めてリジェクトされる前に事前に対策できるツールを目指したい。
◆Xcode 4でする実機インストールの動画チュートリアルをアップ
http://bit.ly/JEofvK
◆Xcode 4でiOSアプリの設定と申請を最短距離でする方法
http://bit.ly/Jk88Bc
◆SakuttoBook(サクッとブック)でiPhoneアプリを作る方法
http://bit.ly/mhgjCG
◆Xcode 4対応のSakuttoBook Lite版ならぬTrial版、無料ダウンロード開始
http://denshi-shoseki.seesaa.net/article/263470895.html
【SakuttoBook日記の最新記事】
- iOS 8、Xcode 5.1.1でSa..
- 2.21リジェクト顛末記2−ストアアプリ..
- 2.21リジェクト顛末記1−Sakutt..
- SakuttoBookだけでするWebの..
- 法人向けD-U-N-S Numberを無..
- 日本語版iBookstoreローンチで始..
- 複数台のMacintoshでiOS De..
- 立川談幸師のグリム童話をSakuttoB..
- Xcode4.5で必要になったiPhon..
- Xcode 4.5とiOSシミュレータ ..
- iOSアプリ内課金、リストア機能なしはな..
- SakuttoBook、PDFのユニバー..
- アプリ内課金を回避するエクスプロイトの衝..
- iOSシミュレータと実機のキャッシュを殺..
- アプリ内課金の仕組み 2 アプリ内課金は..
- アプリ内課金の仕組み 1 アプリ内課金ア..
- SakuttoBookユニバーサル版検証..
- SakuttoBookより安い儲かるiP..
- Lionへのアップデートを誘うiOS 5..
- Xcode 4でする実機インストールの動..