使用@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
}
}