Android, Uri.Builder を使って Uri 文字列を作る

Android で URI の生成・操作を行う Uri.Builder クラスを使って URI 文字列を作る方法のメモ。

Uri.Builder オブジェクトを作って、URI の各パラメータを指定していく。

主なメソッド

scheme
URI が使用するプロトコルを指定する。
authority
一般にホスト名と呼ばれるものを指定する。
path
リソースを指定する。/ 以外の文字は必要に応じてエンコードされる。
path の先頭に / を付けずに指定した場合は、Uri.Builder によって先頭に / が付加される。(schemeauthority が指定されている場合)
appendQueryParameter
キーと値を引数にとり、それぞれエンコードしてクエリ文字列に追加する。
fragment
URIフラグメント(リソース内の部分指定をする)を追加する。
build
指定されたパラメータに基づいた Uri オブジェクトを生成する。

生成された Uri オブジェクトを toString メソッドで文字列にする。

サンプルコード

Uri.Builder builder = new Uri.Builder();
builder.scheme("http");
builder.authority("www.serendip.ws");
builder.path("/hoge/foo");
builder.appendQueryParameter("key1", "val1");
builder.appendQueryParameter("key2", "Encodeされたテキスト");
builder.fragment("fragment(フラグメント)");

TextView tv = (TextView) findViewById(R.id.result);
tv.setText(builder.build().toString());

実行結果

Android, Uri.Builder の実行結果 Screenshot

参考:Uri.Builder | Android Developers

Webを支える技術 -HTTP、URI、HTML、そしてREST (WEB+DB PRESS plus)
山本 陽平
技術評論社
売り上げランキング: 4816
«
»