iPad

StoreKit トランザクションの中断と再開

購入トランザクションは、アプリが最後にfinishTransaction:を呼んだタイミングで完了となりますが、そこにたどり着く前にアプリケーションが終了してしまったりネットが切断してしまう可能性があります。その場合、トランザクションは未完状態になり、次回アプリケーションが起動したタイミングで再開されます。これを適切に処理しようとすると、結構厄介なことに気がつきます。 (さらに…)

投稿者:sota 投稿日時:
iPad

StoreKitのトランザクションの基礎

支払いは完了したのにアイテムがアンロックされない、等の問題が起きないように、StoreKitにはトランザクションの機構があります。トランザクションの機構は絶対に必要なのですが、これがStoreKitによるアプリ内課金の組み込みを複雑にする大きな要素となってきます。基礎から見ていきましょう。 (さらに…)

投稿者:sota 投稿日時:
iPad

プロダクト情報の取得

StoreKitでは、支払いリクエストをする前にプロダクト情報を取得しにいくようにドキュメントに書かれています。プロダクト情報をAppStoreのサーバーに取りにいき、返ってきた情報を基にUIを更新し、また支払いのリクエストを発行するように指南されています。 (さらに…)

投稿者:sota 投稿日時:
iPad

StoreKitと闘う

iOSアプリの売り上げの72%はアプリ内課金から来ている」(このタイトルは若干誇張されていて、正確には「iOSアプリの売り上げの72%はアプリ内課金を搭載したアプリから発生したもの」です)というニュースがあるほど、近年アプリ内課金の存在は大きなものとなってきました。iOSの場合は規約の関係からアプリ内課金を実現する場合にはStoreKitを使うことになりますが、このStoreKitがなかなかの曲者で、僕は未だに取り扱いに苦労しています。 (さらに…)

投稿者:sota 投稿日時:
GLKit

GLKitの基本

iOS 4あたりから、iOSにおけるグラフィックプログラミングの土台がOpenGL ES1からES2に移行されました。ES2ではシェーダー言語を使った実装が基本となるため、ES1に比べて初心者にとっての敷居が高いのが問題で、それを解決できるかもしれない注目のフレームワークがGLKitだったわけです。残念ながらiOS 5が正式リリースされた現在、GLKitはAPIとして使える状態にはなっているものの、ドキュメントはフレームワークリファレンスのみで、なかなか公式資料が他にでてこないのが困ったところ…。 (さらに…)

投稿者:sota 投稿日時:
GLKit

GLKitのテクスチャ

今までiPhoneでOpenGLアプリケーションを作るときに面倒だった要素の一つとして、テクスチャのロードの問題がありました。DirectX等はテクスチャを使いたい際に画像ファイルを指定するだけでそこから自動でテクスチャを生成してくれたりするのですが、OpenGLの場合はそういった機能は用意されていないので、iPhoneの場合も自分で画像ファイルを展開してからビットマップの配列に変換してテクスチャを生成する必要がありました。GLKitではテクスチャローダーというクラスが用意されていて、ファイルを指定するだけでテクスチャを使えるようになりました。便利。
なお、後述の通りこの部分に関しては公式ドキュメントと実際のSDKのAPIの仕様に差異があるため、不確かな情報となっています(2011.10.16現在)。十分に注意してください。 (さらに…)

投稿者:sota 投稿日時:
GLKit

OpenGL Gameテンプレート解読

ついにiOS5がリリースされました。iOS5で新たに加わった機能は沢山ありますが、OpenGL周りではGLKitフレームワークが新たに加わり、プロジェクトテンプレートもGLKitを使ったものに変更されたので、GLKitに慣れる第一歩として早速そのプロジェクトテンプレートを解読していきたいと思います。 (さらに…)

投稿者:sota 投稿日時: