T

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でああだこうだしようと方針を転換しました。公開が先になるのは、この変更のためです。

もうね、ヘトヘトですよ。同じ苦労を味わっている方、お察しします。

Posted by on 9月 7, 2011 in Android, Java, mobile, Titanium

コメントを残す