2010年1月アーカイブ

 お,久しぶりにObjective-C関連本です。日本の方が書いた入門書が出てくるのはとてもよいことですね。amazonのカスタマレビューにも早速好印象の感想が書かれてますし…。

 iPhoneやiPad向けの開発言語としては確かにObjective-Cが主力ですが,今後はFlashからの入口も開かれて,ますます賑やかな領域になりそうですね。

 ユーザーがプログラムしてデバイスを自由に活用するという世界観が,また違った形で蘇ってきたのかも知れませんね。そうなると,プログラミングの知識というよりも,アプリケーションや情報のデザインに関する知識を持つことが重要になってきそうです。

iPad !!

user-pic
   

 いやぁ,出ましたね iPad! http://www.apple.com/jp/ipad/

 iOSってのはガセネタみたいでしたが,iPhone OS 3.2のベータ版が届き,テキスト系などのAPI追加など,かなり賑やかな変化をしているようです。まだインストールできてないのでシミュレータなど触ってないですが...。

 どうやらMac OS XのAppKitの流れを「エイヤッ」っとUIKitへ切り替えていこうという感じなのでしょうか。マルチタスクなどの部分で,うまくAppKit側の資産を取り込み完了した暁にはiOSになるのかも知れません。

 初代iPadはいつも通りのミニマムな仕様で打ち出してきました。Flashがないとか,カメラが無いとか,マルチタスクじゃないとか,Appleの手には乗らないなど,いろいろ賑やかな感想が飛び交っていますが,世代が進めば,そんな問題あっという間に解決です。それよりも,相変わらず世間の注目を集めてデビューさせるのが上手い。そのことの方がより重要です。

 結局,また鐘を鳴らしたのはAppleのJobsだったというわけで,歴史はそれを刻んでいくのです。

 
--
 いやはや,ドコモとソニーエリクソンのAndroid端末の話題はあっという間に忘れ去られてしまった感じ。こちらも操作性のよさをウリとして紹介されていたはずでしたが,iPadのエクスペリエンスの前には色あせてしまいます。

 今後はiPadとの組み合わせでAndroidの方が広がりがあるよと提案していくことが大事かも知れません。リンゴばっかりじゃ面白くないという風にね。とにかく,いろいろと面白い年になりそうです。

 そんな盛り上がりに便乗して,iPhoneアプリのアップデートも完了。今後はiPadを意識しながら新規開発を構想しないと...。

iOS ?!

user-pic
   

 いよいよAppleから新しいデバイスが発表されることになりそうです。様々な情報や噂話がネットを駆け抜けています。いくつかは実際の関係者のフライング証言や発表会場の準備作業から漏れた信憑性の高そうな情報もあり,なんとも期待を煽ってくれます。Appleにとっては莫大な広告費を浮かすことができますから,直前の少々の漏れは許容範囲内?

 iPhone OSのプログラミングに注目してきた本ブログにとっても,新しいデバイスがタブレットであるとすれば,これはもうCocoa Touchフレームワークの採用しか考えられないわけですから,無関心ではいられません。

 そして,やはりというか,iPhone OSという名前をより汎用的な「iOS」とする情報も飛び込んできました。これがCocoa Touch(UIKit)を含んでいることは明白ですが,どの程度Mac OS X(AppKit)との融合,あるいは置き換えられるぐらいの拡張を施しているのかが気になります。

--

 デバイスへの関心という観点からすれば,世間ではAmazon.comのキンドルとの比較で話が進みますが,もはやこれはAmazon.comとiTunes StoreというECサイト同士の争いとして考えなければなりません。総合力では依然としてAmazon.comが強い力を保っていますが,デジタルコンテンツに限ればiTunes Storeもトータルな使いやすさで他の追随を許しません。GoogleのAndroidマーケットは一から出直すべきかも知れません。


 いずれにしても,iOSという新たなシステムの名前と,iTunes Storeを軸とした世界共通のマーケットプラットホーム,そして魅力的なデバイスによって,また違った世界を過ごしていくようになりそうです。

 さて,iOS向けアプリの開発に向けて,引き続きCocoaを楽しみたいと思います。

 時刻表管理アプリ「Ride on Time」をリリースして数日経っています。無料配布と微々たる開発費回収などを目指して,アプリ内広告を導入したアプリとなっています。

 今回はAdMobを採用していますが,AdMobへの登録も簡単なら,広告を表示する機能の組み込みも模範コードを真似してアレンジするだけなので,導入は大変簡単でした。

 さて,導入効果はあるのか。

 収益額等の結果は,公開して日が浅いため参考になる数値を示すことが出来ませんが,広告枠の表示回数や実際の広告表示(インプレッション)数,そしてクリック数などがリアルタイムで確認できます。アプリのダウンロード数とは別個に,実際の利用頻度を反映する情報が得られる効果は大きいです。

 ちなみに広告表示依頼があった地域は,アジア Asia, ヨーロッパ Europe, 北アメリカ North America, オセアニア Oceania. 中東 Middle East, 南アメリカ South America といった感じ。現地の方なのか,はたまた現地在住の日本の方なのかまでは分かりませんが,遠い地で自分の作ったアプリが起動されていると分かると嬉しいものです。

 ちなみに収益に関する感触は,本当に微々たるものになりそう...。最初の30万円は活動費に...なんてのはこの手のアプリでは高望みでした。恐縮です。

 とにかく,App Storeのダウンロード数だけでなく,アプリ内広告の反応を加味しながら,世界中に散らばった自分のアプリの動向を追えるというのは,新鮮な体験です。

 昨年半年をかけて開発していた時刻表管理アプリ「Ride on Time」(http://itunes.apple.com/apps/rideontime)をApp Storeで公開しました。噂のリリース承認審査も14日間かかるという表示に反して迅速に行なっていただき一安心。あとはフィードバックをもらって改善していくことになります。

 さっそくApp Storeのカスタマレビューに改善・改良の提案をいただき,「なるほど」と唸っております。私も提案された機能を追加しなければと思うのですが,機能をシンプルにまとめあげるのはなかなか難しい。あまり慌てずに,フィードバックを注意深く吟味しデザインしながらアップデートしたいと思っています。

--

 無料アプリですし,儲け目的ではないので,プロモーションに焦る必要はないのですが,使ってもらうためには「リリースしたよ!」と声を上げる必要があります。Twitterといくつかの掲示板に告知をしたりしていますが,確かにプロモーションは難しいですね。

 その上,AppStoreのカスタマー評価の星印で★1つが多いとその理由も気になります。まだレビューコメントとして捨て台詞(「こんなの使えねぇ!」とか)をもらったわけではないですが,いただくのも時間の問題ですから覚悟はしておきます。どう使えなかったのか教えてもらえると有り難い。

 嬉しかったのは,世界中のユーザーにダウンロードいただいたことです。1人2人の数のところもあります。リリースされているものを,とりあえずダウンロードするユーザーだと思いますが,それでも南アメリカでもダウンロードがあったと知れば,届いた範囲に感嘆します。これがワールドワイドなApp Storeの凄さですね。

 しばらく静観しつつ,次の展開を考えたいと思います。

 iPhone Appをリリースするため申請をしました。その作業の中で気をつけた方が良さそうなことを,ぽつぽつ箇条書きで書いておこうと思います。

・512 x 512のアイコン画像は「JPEG」(72dpi)である(→アプリ内はPNG主流なので勘違いしてしまった)

・初めてApp登録する際に聞かれるプライマリー言語は「Ebglish」にすべきである(たとえ日本向けAPPでも同様)

・適当でいいから識別コードのようなものをつくれと指示する欄があるので予め何か考えておくと楽

・英語の説明文は面倒だが,他の海外Appを参考にできるので調べておく

・公開日の設定は半月後か一ヶ月後かにするなど余裕をもった予定日にする(承認に要する時間は不定)

 明けましておめでとうございます。2010年もどうぞよろしくお願いします。

--

 新年の大仕事として,Appの申請を行ないました。いやはや,なかなか大変でした。本当は全てを確認してから取り掛かるべきですが,とりあえず断片的な知識でやろうとしたため,いろいろフォローが大変でした。

 申請に限らず,実機を伴って開発する際にはサーティフィケーションとプロビジョニングに関する手続きが必要なので,そのことについてあらためて記録しておこうと思います。

○サーティフィケーションを得るために...
1. キーチェーンアクセス.appを使って,「CertificateSigningRequest.certSigningRequest」というファイルを作成する
2.それをWebの「iPhone Developer Program Portal」にてアップロードして承認してもらう
3.承認されたら,「distribution_identity.cer」をダウンロードして,キーチェインアクセス.appに読み込む(ダブルクリックすればOK)

○開発に使う実機(デバイス)を登録しておく...
1. Webの「iPhone Developer Program Portal」の画面に好きに決めた名前と個別のデバイスIDを入力して登録する(デバイスIDはiTunesとかXcodeのオーガナイザで確認できる)

○アプリID(App ID)を取得しておく...

○プロビジョニングを得るために...
1.新しいプロビジョニングのためのプロファイルの名前を適当に決めて入力する
2. 登録してあるサーティフィケートが選択できるようになっているので,どれか選択する
3. 取得したアプリIDも選択できるようになっているので,どれか選択する
4. 登録してあるデバイスIDも選択できるようになっているので,必要なものを選択する
5. Submitする
6. 画面を行き来しているうちにプロビジョニング・ファイルがダウンロードできるようになっている

○プロビジョニング・ファイルを得たら...
1. Xcodeのアイコンにドラッグ・アンド・ドロップする
2. 実機にそれらがインストールされたかをXcodeのオーガナイザを使って確認する
3. アプリID(App ID)をWebの「iPhone Developer Program Portal」の表示からコピーして,プロジェクト内の設定ファイルに入力する
4. インストールされたプロビジョニング・ファイルもターゲットの情報設定欄で選択しておく

--
 
開発用の手続きは,リリース本番用とは別なので,リリース申請の際には,似たような手続きをWeb「iPhone Developer Program Portal」の本番向けの画面で踏む必要がある。

その場合,サーティフィケーション取得の時に使う「CertificateSigningRequest.certSigningRequest」ファイルは有効期限が残っていれば再度使える模様(あらためて同じものを使っても文句は言われなかった...)。

App IDは入力をミスして登録しても,簡単には取り消せず,再度新しいものを取り直す形になるので,なるべく入力内容に気をつけること。担当者にメールすれば消してもらえるんじゃないかとは思うが試していない。


リリース本番用(ディストリビューション)の手続きの際,プロビジョニング・ファイルの取得目的によって手続きが異なる部分もあるので,その辺は少し勉強してから取り掛かった方が迷わないかも知れない。