Android Lint piensa erróneamente que la versión min SDK es 1

Eclipse se niega a construir mi proyecto de Android. En el explorador de paquetes, el nodo raíz del proyecto tiene el pequeño símbolo de error rojo, pero nada más dentro de él tiene este símbolo. La pestaña Problemas muestra los errores detectados por Lint:

Call requires API level 3 (current min is 1): android.os.AsyncTask#<init> Call requires API level 3 (current min is 1): android.view.GestureDetector#<init> Call requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager#hideSoftInputFromWindow Call requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager#hideSoftInputFromWindow Call requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager#showSoftInput Call requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager#showSoftInput Call requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager#showSoftInput Call requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager#toggleSoftInput Call requires API level 3 (current min is 1): android.view.Menu#getItem Call requires API level 3 (current min is 1): android.view.Menu#getItem Call requires API level 3 (current min is 1): android.widget.HorizontalScrollView#getId Call requires API level 5 (current min is 1): android.app.Activity#onBackPressed Call requires API level 5 (current min is 1): android.app.Activity#onBackPressed Call requires API level 5 (current min is 1): android.app.Activity#onBackPressed Class requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager Class requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager Class requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager Class requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager Class requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager Class requires API level 3 (current min is 1): android.view.inputmethod.InputMethodManager Class requires API level 3 (current min is 1): android.widget.HorizontalScrollView Class requires API level 3 (current min is 1): android.widget.HorizontalScrollView Field requires API level 3 (current min is 1): android.os.Build#DISPLAY Field requires API level 4 (current min is 1): android.content.res.Configuration#screenLayout Field requires API level 4 (current min is 1): android.os.Build#CPU_ABI Field requires API level 4 (current min is 1): android.os.Build#MANUFACTURER Field requires API level 4 (current min is 1): android.os.Build$VERSION#SDK_INT 

Mi mejor conjetura es que Lint piensa que mi minSdkVersion es 1, que no es; Mi manifiesto declara minSdkVersion="8" . He intentado lo siguiente en un esfuerzo por arreglar esto:

  • Reinicio de Eclipse
  • Reiniciar mi computadora
  • Proyecto> Limpieza
  • Eliminar manualmente /bin y /gen para forzar el dobladillo a generar de nuevo

En este punto estoy sin ideas. ¿Alguien tiene sugerencias?

Tengo el mismo problema, y ​​mi solución es:

Haga clic con el botón derecho del ratón en la carpeta del proyecto> Herramientas de Android> Borrar marcadores de Lint

"Run Android Lint" hace que algunos marcadores y los marcadores causen este error.

"Clear Lint Markers" en la Respuesta Aceptada eliminó el error temporalmente, pero seguía volviendo cada vez que guardaba un archivo en el proyecto afectado.

Para que dejara de reportar ese error, tuve que deshabilitar el chequeo de pelusa por completo:

 Right click project -> Properties -> Android Lint Preferences Search for "minSdk" in the search box Click on "UsesMinSdkAttributes" Click the "Ignore All" button at the bottom. 

Limpie y reconstruya el proyecto, y Eclipse / ADT ya no ejecutará la verificación de pelusa para minSdk en su proyecto.

Asegúrese de que tiene el identificador de espacio de nombres android: junto con el atributo minSdkVersion . Me gusta esto:

android:minSdkVersion="8" .

Al crear un proyecto basado en algunos proyectos de muestra de Android (como BluetoothChat) el espacio de nombres se omite y confunde Lint. Entonces, incluso el borrado de los marcadores de Lint no cura realmente el problema, ya que reaparecen después de ejecutar Lint nuevamente, lo que sucede automáticamente bastante a menudo.

Nota: esto se verificó con las muestras de revisión 1 para API16

Prueba a hacer clic con el botón derecho en la carpeta del proyecto> Herramientas de Android> fijar propiedades

También debe comprobar en las propiedades de construcción que todas las bibliotecas de Android y las cosas se comprueban y cargan en el orden correcto. Haga clic derecho en el proyecto> Propiedades> Construir

Un proyecto simple -> Limpio también arregló el problema para mí.

  • Cualquier forma de suprimir las advertencias sobre "cadenas codificadas" en archivos de diseño?
  • No se puede resolver el destino 'android-19'
  • Emulador de Android en Eclipse no funciona
  • Nueva aplicación de actividad en blanco no funciona
  • NoClassDefFoundError desarrollo de biblioteca con aplicaciones para Android, Maven y Eclipse
  • Convertir proyecto java en proyecto android en Eclipse
  • Cómo auto-incrementar el número de compilación del proyecto de Android en Eclipse (prefiero la solución portátil)
  • Problema de Eclipse al instalar nuevo software
  • No se encontró ningún identificador de recursos para android: elevation
  • Nodos de la nube de Appengine generación de cliente que no genera el archivo jar de origen
  • Ejecutar GTM diagnosticar error
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.