有没有办法在调用任何活动之前检查Android API级别?我想设置这个应用程序的方式是,如果API级别低于15,则应用程序启动一个主要使用活动和简单布局的活动,而如果API级别大于或等于15,则应该打开一个不同的活动,使用更漂亮的布局和更高API级别的功能。
我知道如何从MainActivity中执行此操作(只需使用简单的if语句并检查Build编号)但是可以在调用任何内容之前完成此操作吗?因为如果我必须将应用程序的两个完全不同的部分夹在一个Activity中,那么非常拥挤在那里......(而且它不会那么优雅......) 提前谢谢。
答案 0 :(得分:4)
没有任何内置功能可以让您这样做。最简单的解决方法是创建一个存根活动,该活动只会根据当前的Android版本启动适当的活动。
public class StubActivity extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH_MR1) {
startActivity(new Intent(this, ICSActivity.class));
} else {
startActivity(new Intent(this, PreICSActivity.class));
}
finish();
}
}