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