キャリアを判定する

キャリアを判定する

Mobyletインスタンスを取得する

アクセス端末に関する各種情報は、Mobyletインスタンスからアクセス可能です。
一般的には以下コードでMobyletインスタンスを取得可能です。

Mobylet mobylet = MobyletFactory.getInstance();

Seasar2などのDIコンテナを利用する場合は、MobyletインスタンスをDIすることも可能です。
Seasar2の場合は、「mobylet-s2extension.jar」に同梱されている「mobylet.dicon」を、
Webアプリケーション側の「app.dicon」からインクルードすることで、以下のようにDIすることが可能です。

@Resource
protected Mobylet mobylet;

MobyletインスタンスはMobyletImplクラスのデフォルトコンストラクタにより生成も可能ですが、
ひとつのリクエストスコープ内で、複数回Mobyletインスタンスを生成することは不要な処理となるため、
MobyletFactoryから取得する、若しくはrequestスコープコンポーネントとしてご利用ください。

Carrierを取得する

Mobyletインスタンスが取得できたら、次のメソッドでキャリア情報を取得することが可能です。

Carrier carrier = mobylet.getCarrier();

この「carrier」インスタンスは「mobylet-core」で定義されたenum型となっており、
以下のように分岐処理させることも出来ます。

switch (carrier) {
    case DOCOMO:
        //ドコモ端末の場合の処理
        break;
    case AU:
        //au端末の場合の処理
        break;
    case SOFTBANK:
        //ソフトバンク3G端末の場合の処理
        break;
    case OTHER:
        //PC若しくは上記以外の端末の場合の処理
        break;
}

mobyletでは2010年3月にソフトバンクの非3G端末のサービスが終了することに伴い、
ソフトバンクの非3G端末をキャリア判定しません(「OTHER」となります)のでご注意ください。

ページのTOPへ戻る