App 情報を保存できませんでした。もう一度やり直してください。問題が解決しない場合はご連絡ください。

バイナリをアップロードしてから直ぐにアプリを保存したり申請しようとすると、以下のメッセージが出る。

「App 情報を保存できませんでした。もう一度やり直してください。問題が解決しない場合はご連絡ください。」

この場合は暫く(10分~1時間程度)待てばうまくいくようになる。

「We’re temporarily unable to save your changes. Please try again later.」
と出た場合も同様だ。

iOS8のシェア50%突破/過去との決別

iOS8のシェアがようやく50%突破

iOS8のシェアがようやく50%を超えたようだ。弊社ではiPhoneアプリを開発しているが、既に、iOS5やiOS6のサポートは切っている。iOS7は今後1年程度はサポートし続けるが、今後の開発はiOS8をターゲットに進めて行きたい。複数OSのサポートは手間がかかる。動作検証も大変だし、バージョンごとの場合分けが発生し、ソースコードが肥大しやすくなる。切り捨てるものは切り捨てることで、優れた製品を開発していきたい。

iPhoneアプリの審査期間が正常化

2014年10月中旬には、iPhoneアプリの審査期間が11日程度まで伸びていましたが、既に7日程度まで審査期間が短縮されているようです。これでも短くはないですが(Androidアプリはせいぜい数時間ですよね)、多少は改善したと言えます。

アプリの審査期間については以下の記事をご覧ください。
iPhoneアプリの審査期間

Cocos2d-x vs Cocos2d+Apportable

Cocos2d-xは、iPhone、Android、コンシューマゲーム機、PC、Macなど数多くのデバイスに対応した、ゲーム開発フレームワークです。それに対して、Cocos2dは、iPhone, iPad, Macに特化したフレームワークです。今後のマルチデバイス対応を考えると、Cocos2d-xを使うべきなのかなと思い、それぞれを軽くつかってみたのですが、Cocos2d-xではプロジェクトのビルドにかかる時間が長かったり、開発言語がC++であったりと(Objective-Cやcの経験はそれなりにありますが、C++は10年近くブランクがあります)、あまり効率的に開発できそうにありませんでした。対してCocos2dは、慣れ親しんでいるObjective-cを使え、ビルドも早く(簡単なプロジェクトであれば数秒で動きました)SpriteBuilderとの連携も快適で、かなり好印象でした。Androidがメインであれば、Cocos2d-xの方が良さそうですが、iPhoneをメインに開発し、それがAndroidでも動けばよい。といった感じの開発になりそうなので、Cocos2d-xより、Cocos2d+Apportableでの開発が良さそうです。

以下のチュートリアルをやってみましたが、1週間ではなく、1時間で動くところまで作れました。すごくよいチュートリアルでしたよ!
[1: インストール] cocos2d-iPhoneとSpriteBuilderでゲームを1週間で作ろう

iPhoneアプリの審査期間

iPhoneアプリの審査待ち期間を調べる方法。

1. Appleの公式情報
App Review Statusに、5営業日以内の審査率が表示されています。以前は98%などと誇らしげに表示されていたのですが、現時点ではiOSの新規アプリでは5営業日以内の審査率が34%と、審査期間が伸びていることがわかります。公式情報なので信頼できるのですが、あまり参考になりません。
2014-10-24_1031

2. Average App Store Review Times
Average App Store Review Timesに過去2週間の平均待ち期間が集計されています。非公式のデータですが、具体的な平均日数や、日数の分布、審査期間の変遷なども確認できて、とても参考になります。iOS8のリリース以降、審査期間が長期化傾向にあるのでご注意下さい。
2014-10-24_1029

SpriteKitの宇宙船を前に飛ぶようにしてみた

前回の記事の続きです。同じ位置で回転しているだけでは飛んでる感じがしないので、前に進むようにしてみました。runActionを使った動きの実装では、当たり判定などを実装する際にうまくいかないので、nextFrameメソッドで1コマずつ座標を計算するようにしました。

https://github.com/ynishi2014/SpriteKit-experiment

SpriteKitのサンプルの宇宙船を5機に制限

Game > Swift > Spritekit > Universal でサンプルアプリを作成すると、回転する宇宙船が表示された。ゲームにするからには、作成した宇宙船を管理する必要があるだろうと思い、NSMutableArrayで管理し、5個以上表示されないようにした。

https://github.com/ynishi2014/SpriteKit-experiment

iTunes Connectのスクリーンショットはファイル名に日本語が使えない

iTunes Connectが新しくなりましたね〜!

さっそくハマりましよ笑

iTunes Connectのアプリ審査でスクリーンショットをアップするところがあったので、アップするための画像をシミュレータで撮って、アップしたら「画像ファイルが破損しています。iPhotoで開いてから再度保存してください。」みたいなメッセージがでてアップできませんでした笑

なんでやねん!とか思いつついろいろ試行錯誤、、、ふとひらめく、、、まさか・・・と思ってファイル名から日本語を消すとアップできましたー笑

忘れてましたよ笑日本語の罠を笑

てかファイル名に日本語使えません とかするなら シミュレータのスクリーンショットのデフォルトのファイル名に日本語を初めから入れないでください笑

なのでアップロードする時は、ファイル名から日本語を消してアップロードしましょう。

PS.

Appleさん。。。もうちょい分かりやすいエラーメッセージをお願いします笑

iPhoneアプリ開発に関する情報を公開中 ソースコードもあるよ。