Androidのクラスはversionによって追加されたり削除(deprecated)されているため、versionが違っても同じアプリで動作するようにするには、クラスの存在を確認してコードを動的に切り替える必要があります。
クラスの確認にはClass.forName()を使い、引数にクラス名を文字列で設定します。通常のクラスやパッケージはドット(.)で接続しますが、内部クラスはドル($)で接続します。
例)Notification.BuilderクラスはAPI Level 11から追加されており、Notificationの作成方法が異なっています。BuilderクラスはNotificationクラスの内部クラスです。
try {
    Class.forName("android.app.Notification$Builder");
    Log.i(TAB,"Found");
} catch (ClassNotFoundException e) {
    Log.i(TAB,"Not found");
}
 
 
No comments:
Post a Comment