« 【Tizen】電波状態を取得する | トップページ | 【Tizen】aタグで色々なスキームを使ったときの動きを確かめてみた »

2013年6月24日 (月)

【Tizen】別のアプリケーションを起動する

今回は、Tizenで別のアプリケーションを起動する方法についてです。

まだ調べてる途中ではありますが、

どうやらTizenでの他のアプリケーション起動方法は2通りあるようです。


●"tizen.application.launch()"を使用する

こちらは、起動先のアプリを明示的に指定して起動する場合に使うもののようです。

どうやら、Androidでいうところの、明示的インテントにあたるのではないかと。


●"tizen.application.launchAppControl()"を使用する

こちらは、要求動作を指定する方法のようです。

画像処理を行える動作を要求すると、それに該当するアプリが起動するしくみかと。

Androidでいうところの、暗黙的インテントでしょうか。

※まだ調査中です。間違っていたら、突っ込んでいただけるとうれしいです。


今回は、"tizen.application.launch()"を使用して起動する方法について

書き残しておきたいと思います。


手順は以下のとおりです。


(1) privilegeに、"http://tizen.org/privilege/application.launch"を追加する

    config.xmlのprivilegeに、"http://tizen.org/privilege/application.launch"を追加します。

    これを追加しないと、他のアプリを起動するAPIを実行できません。


図1.privilegesの追加

151


(2) "tizen.application.launch()"を呼ぶソースを記述する。

前述のとおり、別アプリの起動は、"tizen.application.launch()"で行います。

このAPIの詳細は、以下のようになっています。

    tizen.application.launch(
        applicationID, // 起動先アプリのID
        onSuccess, // 起動成功時に呼ばれるコールバックメソッド
        onError // 起動失敗時に呼ばれるコールバックメソッド
    );

ポイントは、起動先アプリIDの指定です。

起動先アプリIDを確認するには、起動先アプリのconfig.xmlを見ましょう。

アプリIDは、config.xmlのtizenタブに記述されています。アプリIDは、

アプリのプロジェクトを作ったときに自動生成されます。


図2.起動先アプリIDの確認

152

下記に記述しているのは、ボタンをクリックされたときに、

アプリケーションIDが"JyBw872Ey4"のアプリを起動するサンプルコードです。

●index.html

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8"/>
    <meta name="description" content="A Tizen Web UI FW single-page template generated by Tizen Web IDE"/>
    <title>起動元アプリケーション</title>
    <script src="tizen-web-ui-fw/latest/js/jquery.js"></script>
    <script src="tizen-web-ui-fw/latest/js/tizen-web-ui-fw-libs.js"></script>
    <script src="tizen-web-ui-fw/latest/js/tizen-web-ui-fw.js"
        data-framework-theme="tizen-white"></script>

    <script type="text/javascript" src="./js/main.js"></script>
    <script type="text/javascript" src="./js/launchApp.js"></script>
    <link rel="stylesheet" type="text/css" href="./css/style.css"/>
</head>
<body>
    <div data-role="page">
        <div data-role="header" data-position="fixed">
            <h1>起動元アプリケーション</h1>
        </div><!-- /header -->
        <div data-role="content">
	    <div data-role="button" onclick="javascript:launchApp()">別のアプリケーションを起動</div>
        </div><!-- /content -->
    </div><!-- /page -->
</body>
</html>

●js/launchApp.js

function launchApp() {
     tizen.application.launch(
         "JyBw872Ey4", // 起動先アプリのID
         onSuccess, // 起動成功時に呼ばれるコールバック
         onError // 起動失敗時に呼ばれるコールバック
     );
}

function onSuccess() {
     console.log("success");
}

function onError(e) {
     console.log("faile : " + e.name + " " + e.message);
}

これで、別アプリを起動する処理の実装は、完了です。

« 【Tizen】電波状態を取得する | トップページ | 【Tizen】aタグで色々なスキームを使ったときの動きを確かめてみた »

Tizen」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.f.cocolog-nifty.com/t/trackback/1882306/52155200

この記事へのトラックバック一覧です: 【Tizen】別のアプリケーションを起動する:

« 【Tizen】電波状態を取得する | トップページ | 【Tizen】aタグで色々なスキームを使ったときの動きを確かめてみた »

購入


無料ブログはココログ