Comment se débarrasser de l'avertissement: utilisez '$' au lieu de '.' Pour les classes intérieures dans Eclipse

Je suis nouveau dans le développement Android. Après avoir mis à jour mon eclipse et Android SDK vers la version la plus récente, j'ai reçu un avertissement:

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

J'ai trouvé des informations sur ce lien .

  • Suppression de fragments de FragmentStatePagerAdapter
  • Comment puis-je supprimer les suggestions dans EditText?
  • Les noms des applications Android doivent-ils être uniques?
  • Charge d'Android depuis l'URL vers Bitmap
  • Samsung Galaxy / Holoeverywhere - La ressource n'est pas une ColorStateList (couleur ou chemin)
  • Java.lang.IncompatibleClassChangeError lors de l'inclusion de expresso-contrib: 2.0
  •  "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.)" 

    Je crois que j'ai utilisé des caractères majuscules sous le nom de sous-dossier comme com.abc.app.Promotion .

    La question est: Quelle est la meilleure façon de se débarrasser de cet avertissement dans manifeste.xml? Il peut encore construire et exécuter, mais je l'ai tellement ennuyant.

    J'ai essayé d'utiliser le refactor pour renommer le paquet et modifié le manifeste.xml android:name="com.abc.app.promotion.Promotion" mais j'ai eu cette erreur:

     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? 

    Merci pour ton aide!

    EDIT: original manifest.xml

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

    Mise à jour manifest.xml

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

  • Streaming audio à partir d'une URL dans Android utilisant MediaPlayer?
  • Comment savoir si les animations des fenêtres sont activées dans les paramètres
  • IU déformée Android
  • Énumérer / Iterater toutes les vues en activité?
  • Comment garder / exclure un chemin de paquet particulier lors de l'utilisation de procguard?
  • Android aligner l'image en haut et en centre dans RelativeLayout
  • 2 Solutions collect form web for “Comment se débarrasser de l'avertissement: utilisez '$' au lieu de '.' Pour les classes intérieures dans Eclipse”

    Si vous obtenez cet avertissement pour une classe qui n'est pas réellement une classe interne, c'est parce que vous utilisez des caractères majuscules dans votre nom de package , ce qui n'est pas conventionnel.

    J'ai également essayé de modifier uniquement la première lettre du nom du paquetage pour être minuscule, l'avertissement a disparu.

    Le problème le plus probable est apparu parce que l' utilisation des majuscules dans le nom du paquet , donc changez les majuscules en minuscules. Si l'avertissement reste encore,

    Puis importez l'espace de noms des outils:

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

    Ignorez ensuite l'avertissement sur l'élément spécifique:

     tools:ignore="InnerclassSeparator" 
    coAndroid est un fan Android de Google, tout sur les téléphones Android, Android Wear, Android Dev et Android Games Apps.