0
Thumbsup

いい質問だ

0

Thumbsdown

うーん

Androidでカメラオーバーレイはできないのでしょうか?

my_yama
my_yama 0

投稿日:2013-10-03 11:30:41

現在、カメラオーバーレイ機能を組み込んでいますが、以下のような現象が発生しています。

・IOSではオーバーレイ画像が出てきますが、androidでは出てこない。
※カメラは起動する。

コードは以下のようにしています。

Ti.Media.showCamera({
  success : function(event) {
     ~
  },
  cancel : function() {
     ~
  },
  error : function(error) {
     ~
  },
  overlay : cameraOverlayView,   // オーバーレイのView
  showControls : false,
  mediaTypes : Ti.Media.MEDIATYPEPHOTO,
  autohide : false
});

Androidでは上記のやり方ではできないのでしょうか?

どなたかAndroidでカメラオーバーレイ機能を組み込んでいる方がいましたら、
モジュールの紹介やコードの修正などのアドバイスいただけないでしょうか?

開発環境はTitanium SDK 3.1系(3.1.3)です。

よろしくお願いします。



回答

nakano
nakano
40

Thumbsup

いい回答

1

Thumbsdown

うーん



APIを確認すると、iOS上で動作するようです。

overlay : Titanium.UI.View
View to added as an overlay to the camera UI (on top).

On iOS, the overlay view is usually used in conjunction with showControls: false. The transform property can be used to scale and position the camera preview inside the overlay view.

http://docs.appcelerator.com/titanium/3.0/#!/api/CameraOptionsType-property-overlay


ぼくはAndroidの場合Intentでしかカメラを使ったことがないのでなんとも言えなくてすみませんが、ソースを見てみるとどうやら使えるっぽいんですよね。 https://github.com/appcelerator/titanium_mobile/blob/master/android/modules/media/src/java/ti/modules/titanium/media/MediaModule.java#L174 --- k0sukey

お二人とも回答ありがとうございます。 nakanoさん 確かにiOSの記述が書かれているようですね。 これだとAndroidの動作は保障しないということなのか難しいところです… k0sukeyさん ソースにあるなら使用できるんですかね? なら理論上できるということかな。確かめてみますね。ありがとうございます。 --- my_yama

umi_uyura
umi_uyura
140
Tcad_icon

Thumbsup

いい回答

1

Thumbsdown

うーん



Androidでもできています。

オーバーレイ部分自体は単純なのでコード自体は同じようなものだと思いますが、
参考になるかもと思い、GitHubにアップしてみました。

https://github.com/umi-uyura/TiOverlayDemo/blob/master/Resources/app.js

SDK 1.8の頃に合成写真的なことをしようとして中途半端になっているものですが、
一応3.1.3でビルドして、実機(GALAXY S、GALAXY S3)でオーバーレイが表示されることは確認しています。
(逆にエミュレータでは確認していないです、が、作業していた当時はエミュレータでも表示できていた気がします)


サンプルまでいただいてありがとうございます。 これを参考にして組み込んでみます! --- my_yama

ログインすると回答することができます。