Titanium MobileでAndroidでカメラ
1.7系になってからAndroidのカメラ機能では問題続きのTitanium Mobileですが、iOSに実装されている、撮影した画像を切り取ってそこだけ保存するCROP機能が欲しかったのでモジュールを作ってみました。
が、公開はもう少し先になります。理由は、これから述べます。
まず、SDK2.3以上では動作したのですが、2.2では動きませんでした。どれくらい動かないかというと、うんともすんともいいません。どうやらonActivityResultがカメラの場合ちゃんと発動しないケースがあるらしく、たぶんマルチスレッドの処理に問題があるんだと思います。そのため、Titanium.Media.showCameraのsuccessでcom.android.camera.action.CROPを呼び出そうとしても、successがちゃんと呼ばれないのでどーしよーもないのです。
そこで、カメラもTitaniumで用意されているものではなく自前でAndroidのAPIを叩いて作ってしまって、そのonActivityResultでああだこうだしようと方針を転換しました。公開が先になるのは、この変更のためです。
もうね、ヘトヘトですよ。同じ苦労を味わっている方、お察しします。
コメントを残す