Cómo deshacerse de la advertencia: Utilice '$' en lugar de '.' Para clases internas en Eclipse

Soy nuevo en el desarrollo de Android. Después de actualizar mi eclipse y Android SDK a la versión más reciente, recibí una advertencia:

Use '$' instead of '.' for inner classes (or use only lowercase letters in package names) AndroidManifest.xml 

He encontrado alguna información en este enlace .

 "When you reference an inner class in a manifest file, you must use '$' instead of '.' " + "as the separator character, eg Outer$Inner instead of Outer.Inner.\n" + "\n" + "(If you get this warning for a class which is not actually an inner class, it's " + "because you are using uppercase characters in your package name, which is not " + "conventional.)" 

Creo que he utilizado caracteres en mayúsculas en el nombre de paquete secundario como com.abc.app.Promotion .

La pregunta es: ¿Cuál es la mejor manera de deshacerse de esta advertencia en el manifiesto.xml? Todavía puede construir y correr, pero me parece tan molesto.

Intenté usar refactor para renombrar el paquete y modificar el manifiesto.xml android:name="com.abc.app.promotion.Promotion" pero obtuvo este error:

 java.lang.RuntimeException: Unable to start activity ComponentInfo{com.abc.app/com.abc.app.TabView}: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.abc.app/com.abc.app.promotion.Promotion}; have you declared this activity in your AndroidManifest.xml? 

¡Gracias por ayudar!

EDIT: original manifest.xml

 <activity android:name=".Promotion.Promotion" ></activity> 

Actualizado manifest.xml

 <activity android:name="promotion.Promotion" ></activity> 

2 Solutions collect form web for “Cómo deshacerse de la advertencia: Utilice '$' en lugar de '.' Para clases internas en Eclipse”

Si recibe esta advertencia para una clase que en realidad no es una clase interna, es porque está utilizando caracteres en mayúsculas en el nombre del paquete , lo cual no es convencional.

También traté de cambiar sólo la primera letra del nombre del paquete a ser minúscula, la advertencia desapareció.

El problema más probable apareció porque el uso de mayúsculas en el nombre del paquete , por lo que cambiar mayúsculas a minúsculas. Si la advertencia todavía permanece,

Luego importar el espacio de nombres de las herramientas:

 xmlns:tools="http://schemas.android.com/tools" 

A continuación, ignore la advertencia sobre el elemento específico:

 tools:ignore="InnerclassSeparator" 
  • Aplicación Android que tiene iconos de acceso directo a aplicaciones específicas dentro de ella
  • No se puede importar android.support.design.widget.NavigationView
  • Aplicaciones firmadas con Android
  • ¿Puedo conectar Apache Derby DataBase con la aplicación Android?
  • Android GridLayout obtener fila / columna
  • No se puede usar getLayoutPosition () o getAdapterPosition () en RecyclerView
  • Cómo convertir un entero de color a un hex en String en Android?
  • Ningún constructor vacío al crear un servicio
  • Cómo arrastrar varias vistas de botón en java
  • ¿Cuánto tiempo hace que se registró la última ubicación conocida?
  • ¿Por qué DefaultHttpClient envía datos a través de un socket semi-cerrado?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.