Android Eclipse Lint API cheques

Gracias P.T. Por lo que parece ser la respuesta correcta a la pregunta.Creación de aplicaciones de Android de múltiples SDK en Eclipse sin perder los controles de tiempo de compilación. Sin embargo, cuando intento utilizar la anotación @TargetApi () como se recomienda, genera errores de sintaxis.

@TargetApi(11)    // location 1
public class DisplayMessageActivity extends Activity {

    @Override
    @TargetApi(11)    // location 2
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
            @TargetApi(11)    // location 3
            getActionBar().setDisplayHomeAsUpEnabled(true); }

genera dos errores de sintaxis en la línea @TargetApi cuando está en medio del código como se muestra en la ubicación 3:

x Syntax error, insert "enum Identifier" to complete EnumHeaderName
x Syntax error, insert "enumBody" to complete BlockStatements

Los errores existen si tengo el@TargetApi línea antes de laif declaración o después de que como se muestra. ¿Existen requisitos previos (importaciones) u otras consideraciones no mencionadas en elLint API Check artículohttp://tools.android.com/recent/lintapicheck ¿Para que @TargetApi () funcione correctamente?

--- Editar 9/3/2012 ---

Si muevo la anotación @TargetApi antes de la definición de la clase (mostrada como ubicación 1) o antes de la definición del método (mostrada como la ubicación 2, ya sea antes o después de la anotación @verride), obtengo diferentes errores:

x TargetApi cannot be resolved to a type
x The attribute value is undefined for the annotation type TargetApi

--- Editar 9/4/2012 ---

Aquí está el código fuente completo:

package com.example.my.first.app;

import android.app.Activity;
import android.content.Intent;
import android.os.Build;
import android.os.Bundle;
import android.support.v4.app.NavUtils;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.TextView;

public class DisplayMessageActivity extends Activity {

    @TargetApi(11)
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // ActionBar introduced in Android 3.0 Honeycomb API 11
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
            getActionBar().setDisplayHomeAsUpEnabled(true); }   // Up Navigation

        // Get the message from the intent
        Intent intent = getIntent();
        String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE);

        // Create the text view
        TextView textView = new TextView(this);
        textView.setTextSize(40);
        textView.setText(message);

        // Set the text view as the activity layout
        setContentView(textView);
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        getMenuInflater().inflate(R.menu.activity_display_message, menu);
        return true;
    }


    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        switch (item.getItemId()) {
            case android.R.id.home:
                NavUtils.navigateUpFromSameTask(this);
                return true;
        }
        return super.onOptionsItemSelected(item);
    }

}

Respuestas a la pregunta(3)

Su respuesta a la pregunta