了解@SuppressLint("NewApi")注释

vhd*_*vhd 36 java eclipse android android-lint

我是一个Android初学者.在尝试管理活动生命周期的代码时,我遇到了一件新事物.

package com.example.activitylaunch;

import android.os.Build;
import android.os.Bundle;
import android.annotation.SuppressLint;
import android.app.ActionBar;
import android.app.Activity;
import android.view.Menu;
import android.widget.TextView;

@SuppressLint("NewApi")
public class MainActivity extends Activity {

TextView mTextView;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    mTextView = (TextView) findViewById(R.id.text_message);

    if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB)
    {
        ActionBar actionBar = getActionBar();
        actionBar.setHomeButtonEnabled(false);
    }
    }

@Override
public void onDestroy(){
    super.onDestroy();
    android.os.Debug.stopMethodTracing();
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
    // Inflate the menu; this adds items to the action bar if it is present.
    getMenuInflater().inflate(R.menu.main, menu);
    return true;
}

}
Run Code Online (Sandbox Code Playgroud)

我很好地理解了代码,但它在ActionBar SuppressLint中出错了.当我双击它时,@SuppressLint("NewApi")正在添加.这是什么意思@SuppressLint("NewApi")

Rag*_*ood 71

@SuppressLint("NewApi") 是Android Lint工具使用的注释.

只要代码中的某些内容不是最佳或可能崩溃,Lint就会告诉您.通过NewApi那里,您将抑制所有警告,告诉您是否使用了在您之后引入的任何APIminSdkVersion

查看Lint检查的完整列表 - 包括"NewApi" - 在这里:http://tools.android.com/tips/lint-checks


Kiw*_*iwi 9

来源:点击这里

除了测试您的Android应用程序是否满足其功能要求之外,确保您的代码没有结构问题也很重要.结构不良的代码会影响Android应用的可靠性和效率,并使您的代码难以维护.例如,如果XML资源文件包含未使用的命名空间,则会占用空间并导致不必要的处理.其他结构问题(例如使用目标API版本不支持的已弃用元素或API调用)可能会导致代码无法正常运行.

Android SDK提供了一个代码扫描工具lint,可以帮助您轻松识别和纠正代码结构质量的问题,而无需执行应用程序或编写任何测试用例.通过描述消息和严重性级别报告该工具检测到的每个问题,以便您可以快速确定需要进行的关键改进的优先级.您还可以配置问题的严重性级别,以忽略与项目无关的问题,或提高严重性级别.该工具具有命令行界面,因此您可以轻松地将其集成到自动化测试过程中.

lint工具会检查您的Android项目源文件是否存在潜在错误,并针对正确性,安全性,性能,可用性,可访问性和国际化进行了优化改进.您可以从命令行lint或Eclipse环境运行.

  • -1这个答案谈到了Lint的目的是什么,但没有提到OP的问题 - 为什么要添加对NewApi的抑制. (5认同)