Tweet
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
Home > > JavaScript Anywhere 1.6.3をリリースしました
Home > > JavaScript Anywhere 1.6.3をリリースしました
Home > jsany > JavaScript Anywhere 1.6.3をリリースしました
Tweet
最近はもっぱらこっちでブログを書いていますが、昔のプロダクトのアップデートなのでたまにはこちらに。
告知が遅れましたが、久々にJavaScript Anywhereをアップデートしました。
iOS6・iPhone 5のサポートと、あと、iOS5以降でファイルの更新が反映されない問題への暫定対応として、Reloadボタンを設置しました。
(根本的な解決策にはコアな部分を作り直す必要があるため、ひとまずこのような対応になっています。ご了承下さい。)
なお、このアプリですが、9月25日に申請して30日に通るという、最近では考えられない速度で通りました。
iOS6対応のは優先して審査されてるのかとも思いましたが、他のアプリは普通に1週間以上放置されているので、ただの担当者依存のようです。
というわけで、以下、2010年に初心者が作ったアプリをiOS6に対応する上でハマったことを、ご参考までに書き連ねてみます。
僕がアプリ開発をはじめた2010年頃には、まだ「App IDはワイルドカードにしておくと楽だよ」みたいなことが真しやかに囁かれていました。
初心者だった僕はそれを真に受けてしまいました。
そのせいで、iCloudやGame Centerが使えないという制約がありつつも、いままでこのアプリについてはそのままで来ました。
が、ついに今回、
Code Sign error: Provisioning profile 'xxx' specifies the Application Identifier 'com.bornneet.*' which doesn't match the current setting 'com.bornneet.JsAnywhere'
というメッセージと共に署名できなくなってしまいました。
これは大変だ、と思いましたが、ワイルドカードじゃないApp ID(com.bornneet.JsAnywhere)とプロビジョニングプロファイルを作ればそれで解決でした。
今まではApp IDを変えちゃダメだと思っていましたが、Bundle Identifierが変わらなければいいので、ワイルドカード→通常の変更はなんの問題もないようです。
iPhone 5のRetina(4 inch)に対応するためには640x1136のスプラッシュスクリーンを設定しないといけません。
ですが、この古いアプリにはそもそもスプラッシュスクリーンが設定されていません。
(iPadが出るまでは今ほどスプラッシュスクリーンが設定されているアプリは多くありませんでした。)
スプラッシュスクリーンを作るのがまともな対応ですが、今回は、新規でXcodeプロジェクトを作ると付いてくる「真っ黒画像」を借りてきて設定しました。
無事、審査は通ったのでとりあえずの対応としてはこれでよさそうです。
Xibで作ってるアプリはコードや設定を変えないと縦長対応にうまく対応できないようです。
これ以外のアプリは全てコードで書いているので、一瞬で対応が終わりましたが、これは一手間必要でした。
今まで、XibやStoryboardを使うのがAppleの推奨なのかなぁ、と思っていましたが、今回の対応を見ると、全部コードで書いてた方がやっぱ変更に強いし、これからもそうしようと改めて思ったのでした。
初心者が書いた古いコードを弄るのは限界。
こいつを今更1からやるのもなぁと思い、Coffescript At Onceを別アプリとしてリリースしましたが、こっちもストアに出している以上はやっぱりそれなりの品質を保ちたいので、Version 2として作り直すのもありかなぁと思い始めています。
とはいえ新しく作りたいアプリもたくさんあるので、期待せずにお待ちください。
それでは。3連休も残り1日。良い休暇をお過ごし下さい。