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

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

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

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

StoreKitの支払いリクエストの作成と購入手続きの開始まで

StoreKitにおける課金は、支払い(ペイメント)のリクエストをStoreKitに投げることではじまります。まだまだややこしい内容はでてきませんが、一つずつ確認していきます。 “StoreKitの支払いリクエストの作成と購入手続きの開始まで” の続きを読む

プロダクト情報の取得

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

StoreKitと闘う

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

Mac Blu-ray Playerを買ってみた

なんとなくそろそろBlu-rayを見る環境が欲しいなあと思っていた所、Mac Blu-ray Playerが期間限定で安くなっていたので、購入してみました。あわせて外付けBlu-rayドライブも購入することに。
そんなにハードユースはしないかなと思ったので、性能は特別高くはないけれど省スペースでスマートそうに見えたMacbethのBlu-rayドライブを約1.6万で購入。

というわけで再生ソフトとドライブが手に入りBlu-ray再生環境は手に入ったものの、よく考えてみたらBlu-rayソフトを一本も持っていない。Amazonでなにか買ってみようかと思うものの、あまり購買意欲をそそられる商品もなく、結局さきほどようやくレンタルビデオショップで適当な映画を何本か借りてきて動作確認しました。
今日試したソフト(ナルニア国物語2)では日本語字幕まで再生できたし、映像もスムーズに再生できてなかなかよさげ。 
しかしまだ映像の再生準備中にソフトがフリーズしてしまったり、再起動しないとドライブからディスクが取り出せなくなったり、まだまだソフト/ハードともに挙動が怪しい部分も残っているので、自信の無い人はもう少し様子見の方がいいかもしれないなという印象でした。
とはいえ、iMac(i5)の27インチ画面できれいな映像が再生できるようになったのはすばらしい!DVDとの画質の差は明らかです。問題は、Blu-rayで見たいと思うような作品が意外とないこと…。

Objective-CでOAuthその3

OAuthConsumerの標準のデリゲート/セレクタを使う形の使い方は、実際に使ってみると可読性の低いコードになってしまったり、セレクタの名前を間違えてしまったりなどミスが発生しがちなので、OAuthConsumerをブロックに対応させるクラスを作りました。
例によって、使うときは無保証/自己責任で注意して使ってください。 “Objective-CでOAuthその3” の続きを読む