web-dev-qa-db-fra.com

Quel devrait être le nom du paquet de l'application Android?

Je veux savoir que doit être le nom du package de l'application Android? Cela signifie normalement que nous avons utilisé com.appname OR com.organizationName.appName, mais lorsque nous soumettons notre application au marché, il affiche parfois les erreurs liées au nom du package qui- Veuillez modifier le nom du package. Il ne faut pas commencer avec com etc.

Je veux savoir pourquoi cela se passe? Et quel devrait être le bon nom du paquet pour l'application Android?

Si quelqu'un connaît la raison ou la réponse de cette question, merci de me le faire savoir.

Merci d'avance.

32
anddev

Comme indiqué ici: Les noms de packages sont écrits en minuscules pour éviter tout conflit avec les noms de classes ou d'interfaces.

Les entreprises utilisent leur nom de domaine Internet inversé pour commencer leurs noms de package, par exemple, com.example.mypackage for a package named mypackage created by a programmer at example.com.

Les collisions de noms survenant au sein d'une seule entreprise doivent être traitées par convention dans cette entreprise, par exemple en incluant la région ou le nom du projet après le nom de l'entreprise (par exemple, com.example.region.mypackage).

Les paquets dans le langage Java lui-même commencent par Java. ou javax.

Dans certains cas, le nom de domaine Internet peut ne pas être un nom de package valide. Cela peut se produire si le nom de domaine contient un trait d'union ou un autre caractère spécial, si le nom du package commence par un chiffre ou un autre caractère qu'il est illégal d'utiliser au début d'un nom Java ou si le nom du package contient un mot clé Java réservé. tels que "int". Dans ce cas, la convention suggérée consiste à ajouter un trait de soulignement. Par exemple:

enter image description here

47
Paresh Mayani

Android suit les mêmes conventions de nommage que Java,

Conventions de nommage

Les noms de packages sont écrits en minuscules pour éviter les conflits avec les noms de classes ou d'interfaces.

Les entreprises utilisent leur nom de domaine Internet inversé pour commencer leurs noms de package, par exemple, com.example.mypackage pour un package nommé mypackage créé par un programmeur à example.com.

Les collisions de noms survenant au sein d'une seule entreprise doivent être traitées par convention dans cette entreprise, par exemple en incluant la région ou le nom du projet après le nom de l'entreprise (par exemple, com.example.region.mypackage).

Les paquets dans le langage Java lui-même commencent par Java. ou javax.

Dans certains cas, le nom de domaine Internet peut ne pas être un nom de package valide. Cela peut se produire si le nom de domaine contient un trait d'union ou un autre caractère spécial, si le nom du package commence par un chiffre ou un autre caractère qu'il est illégal d'utiliser au début d'un nom Java ou si le nom du package contient un mot clé Java réservé. tels que "int". Dans ce cas, la convention suggérée consiste à ajouter un trait de soulignement. Par exemple:

Légalisation des noms de paquets:

       Domain Name                            Package Name Prefix

hyphenated-name.example.org             org.example.hyphenated_name
example.int                             int_.example
123name.example.com                     com.example._123name
9
user370305

Comme vous l'avez dit, les noms de paquetages se présentent généralement sous la forme 'com.organizationName.appName' - en minuscules et sans espaces. Il semble que le nom du package que vous avez entré lors du téléchargement de l'application était différent de celui déclaré dans le Manifeste Android.

3
spatulamania

Actuellement, le nom du package commençant par "com.example" n'est pas autorisé à être téléchargé dans l'application -store . Sinon, tous les autres noms de package commençant par "com" sont autorisés.

2
aparupa

le nom du paquet avec 0 peut causer des problèmes pour sharedPreference. 

(OK) con = createPackageContext("com.example.Android.sf1", 0);

(Problème mais pas d'erreur) 

con = createPackageContext("com.example.Android.sf01", 0);
0
kimman

Accédez à https://developers.google.com/mobile/add et essayez de remplir le "nom du package Android". Dans certains cas, il peut écrire une erreur: "Nom de package Android non valide".

Dans https://developer.Android.com/studio/build/application-id.html il est écrit:

Et bien que l'ID de l'application ressemble à un package Java traditionnel nom, les règles de nommage pour l’ID d’application sont un peu plus contraignant:

  • Il doit comporter au moins deux segments (un ou plusieurs points).
  • Chaque segment doit commencer par une lettre.
  • Tous les caractères doivent être alphanumériques ou un trait de soulignement [a-zA-Z0-9_].

Ainsi, "0com.example.app" et "com.1example.app" sont des erreurs.

0
CoolMind