

Chromeアプリからandroidのintentスキーマを使い、アプリがあればアプリを立ち上げて、アプリがなければマーケットに飛ぶことまでは出来て居ます。  
ただ、そのアプリの特定のページに移動する事が出来ない状態です。  
おそらく、受け渡しするときのパラメーターがうまく引き渡せていないと思います。

なので、アプリ内の特定ページに移動できません。

パラメーターの受け渡しの設定がわかれば教えてください。

ちなみに今のパスは  
intent://ファイルのパス#Intent;package=マーケットのユニークID(バンドルID?);scheme=アプリスキーム名;end;  
こんな感じです。

宜しくお願いします。


CC BY-SA 3.0
2017-01-23T04:17:24.250
32071
2017-03-27T13:55:33.900
2017-01-23T06:38:22.260
8000
20350
question
android
intent://でアプリにパラメータを渡したい


「アプリ内の特定のページ」は「特定のActivity」と読み替えさせて回答させていただきます。

あとは  
<https://developer.chrome.com/multidevice/android/intents>  
辺りに記載がありますが、「ファイルのパス」という概念はありません。

一応下記にも例を記載します。

リンク側：([]は説明用括弧で実際には不要です。)

[code]

    <a href="intent://[host名]/#Intent;scheme=[scheme名];package=[package名];category=android.intent.category.BROWSABLE;action=android.intent.action.VIEW;end;">Test Link</a>
    
[/code]

Manifest側

[code]

    <activity android:name=".起動したいActivity">
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <data android:scheme="scheme名"
                android:host="host名" />
        </intent-filter>
    
[/code]

Action/Categoryは必要に応じて追加可能ですが、manifest側のcategory.BROWSABLEは必須のようです。

アプリを起動したいだけならばschemeとhostだけで起動可能なはずです。  
packageをつけることで、アプリがインストールされていない場合に該当packageを探しに行きます。

* * *

その他、extra情報等をつけたい場合などにのintent:スキーマ文字列の組み立て方は下記コマンドが便利です。

[code]

    adb shell am to-intent-uri 
    
[/code]

<https://developer.android.com/studio/command-line/adb.html#IntentSpec>


CC BY-SA 3.0
2017-01-23T09:22:56.373
32082
2017-01-23T11:02:17.930
2017-01-23T11:02:17.930
19716
19716
32071
answer