Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/335.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 理解@SuppressLint(“NewApi”)注释_Java_Android_Eclipse_Android Lint - Fatal编程技术网

Java 理解@SuppressLint(“NewApi”)注释

Java 理解@SuppressLint(“NewApi”)注释,java,android,eclipse,android-lint,Java,Android,Eclipse,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.Me

我是一个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;
}

}
我很理解代码,但它在ActionBar SuppressLint中给出了一个错误。当我双击它时,正在添加
@SuppressLint(“NewApi”)
。这里的
@suppressint(“NewApi”)
是什么意思?

@suppressint(“NewApi”)
是安卓Lint工具使用的注释

当代码中的某些内容不是最佳的或可能崩溃时,Lint会告诉您。通过在那里传递
NewApi
,您将抑制所有警告,这些警告将告诉您是否正在使用在
minSdkVersion

查看完整的Lint检查列表-包括“NewApi”-此处:

来源:

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

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


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

相关问题:-1这个答案讨论了lint的用途,但没有提到OP的问题——为什么要添加对NewApi的抑制。没有提到这个问题。