Android高低API版本兼容之@TargetApi

Android高低API版本兼容之@TargetApi

Android

使用@TargetApi annotaion,使高版本API的代码在低版本SDK不报错

例如:
AsyncTask.THREAD_POOL_EXECUTOR, 这个静态变量是API11才有的,设置project build target为2.1.
这个时候eclipse会提示找不到这个变量。

只要在方法前面加一个@TargetApi(11),这样就不会报错了,程序已经可以跑在低版本SDK上了。
另外在代码上要加一个版本判断是否执行该代码,例子如下:
@TargetApi(11)
public void text(){
   if(Build.VERSION.SDK_INT >= 11){
      //使用API11新加API
   }
}
当然,可以编译不表示可以运行, 在低版本要确保代码不会运行到这里;

你可能感兴趣的:(Android高低API版本兼容之@TargetApi)