T

TitaniumでMIMEタイプ別に外部アプリを起動

Androidの仕組みで、URLとMIMEタイプを渡して暗黙のIntentを呼び出すと、可能であればそれに即した外部アプリが選ばれるというのがあった。例えば、video/mp4を指定してファイルのURLを渡すと動画プレーヤーが起動する(複数インストールされていれば選択画面がポップアップする)。

TitaniumだとTitanium.Platform.openUrlがそれに近いのだが、Chromeが起動するようになっていた。というわけで、関数一個だけ用意すればいいのだからちゃっと作って公開しておいた。

OpenUrlWithType

使い方は簡単、まず上のリンクからソースコードを取得して、OpenUrlWithTypeディレクトリで

$ ant
$ ant run

すればサンプルアプリケーションが起動する。distディレクトリが出来ているはずなので、そこにあるzipファイルをTitaniumのプロジェクトディレクトリ直下に置き、tieapp.xmlに

<modules>
  <module version="0.1">org.selfkleptomaniac.ti.openurlwithtype</module>
</modules>

こんな感じでモジュールを追加する。

JavaScriptからの呼び出しは

var open_url_with_type = require('org.selfkleptomaniac.ti.openurlwithtype');
open_url_with_type.openUrlWithType('http://www.example.com/great_movie.3gp', 'video/mp4');

こんな風に指定する。video/mp4でしか動かしてないので、いろいろ機能があった方がいい人はforkしてください。

Posted by on 6月 30, 2011 in Java, Titanium

コメントを残す