1.Manifext.xmlでActivityの定義を行う
こんな感じで定義します。
ここでミソなのがintent-filter内の
と
です。
まず、
はブラウザから参照できますよーという意味だったはずです。
うん、うろ覚えですみません。
そして、
はブラウザというかhtmlに指定するスキーマです。
こちらはアプリで一意になるようにした方が良いです。
他のアプリでもこういうことをしているアプリと競合が起きたら困りますもの。
とりあえず、これで下準備はOK
2.呼び出し元のhtmlの準備
ブラウザから呼び出すためにはhtmlが必要なのねん。
というわけで、どういう風なhtmlを準備すればよいのかを簡単に記載します。
基本的にはこの書き方でOKです。アプリ起動テスト アプリ起動
確か動いたので。
そして、やはりWebとの連携ですからWeb側から適宜DBの値をgetで貰うことも可能です。
その場合はhtmlは
と記載します。アプリ起動テスト アプリ起動
3.Activityの準備
呼び出される側のActivityの準備です。
今回はとりあえず基本的なこととして、onCreateで取得したURLをLogcatに表示させるようにします。
protected void onCreateDetail(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Intent intent = getIntent();
String action = intent.getAction();
if(Intent.ACTION_VIEW.equals(action)){
Uri uri = intent.getData();
String url = uri.toString();
//とりあえずログに出す
Log.d("Dbg", "uri = [" + url + "]");
}
こんな感じで書けば「startapp://id=123」が文字列として取得できるので、適宜処理をしてあげて素敵にしましょう。
ふう、マジメな記事を書いて疲れました…。
0 件のコメント:
コメントを投稿