Web事業部_クリエイティブ
Web事業部_クリエイティブ
2010.04.26

iPhoneアプリ開発 three20を使う

鳥よし

僕が初めて作ったアプリがフォトビューアのアプリでした。
そして、2番目に作ったアプリが、最初のアプリを改良して作った電子書籍ビューアのアプリでした。

これを作成する際に、どうしてもUIScrollViewにダブルタップによる拡大・縮小機能を実装する事ができず(元々、UIScrollViewにはダブルタップによるズームイン・アウトが実装されていない。)途方に暮れそうになっていました。

そんな時に発見したのがthree20というiPhone向けオープンソースライブラリでした。
この中にある「Phot Thumbnails」がWeb上の画像をiPhoneの「Photo Albums」のように表示するという動作を再現しています。

色々と調べてみると、使用するにあたって2点大きな問題点がある事が分かりました。

1.three20のコード内にUndocumented APIを含んでいるため、そのまま使用してもAppStoreに申請の際にRejectされる。
2.このプロジェクト自体もう動いていない為、問題があった際に自力でなんとかしなければならない。(ソースが複雑すぎて超難問)(正直、これを作成された方をリスペクトしています。)

上記の問題1つ目は、該当部分がリンクに載っていたので、該当部分を修正する事によって回避できそうです。

2点目の問題に関しては、もう覚悟を決めるしかありませんでした。

と言う事で、ここから修羅の道が始まりました。

まずはgithubよりthree20をダウンロードします。

そして、自分のプロジェクト内にthree20を取り込みます。
取り込む際の手順はここがとても参考になりました。

  • ソースの解析に何日もかかりました。
  • よくわからないエラーが多発しました。
  • 頭が痛くなりました。
  • 判断のミスに気がつきました。
  • もう、後には戻れないと思いました。
  • 一人デスマーチが開催されました。

そして、時は流れ、ようやく完成しました。(残念ながら、ソースを公開する事ができないのですが・・・)
最終的には力ずくでねじ伏せた感じです。

その後、2週間程度の審査を経て、無事AppStoreに上がりました。(試験的に上げたため、現在は削除しています。)

振り返ってみると、iPhoneアプリ開発の初心者な僕には修羅の道でした。

ただ、この経験のおかげ?で、現在の開発は大分楽にできるようになりました。 何事も経験ですね。