Pour l'exemple "Hello World" dans android.com , le nom du package est
"package com.example.helloandroid;"
Existe-t-il une directive / norme pour nommer ce package? (les références seraient bien)
Pour l'exemple "Hello World" dans android.com , le nom du package est
"package com.example.helloandroid;"
Existe-t-il une directive / norme pour nommer ce package? (les références seraient bien)
Réponses:
Android suit les conventions normales des packages java et voici un extrait de texte important à lire (cela est important en ce qui concerne la large utilisation des fichiers xml lors du développement sur Android).
La raison de l'avoir dans l'ordre inverse est liée à la disposition sur le support de stockage. Si vous considérez chaque période ('.') Dans le nom de l'application comme un séparateur de chemin, toutes les applications d'un éditeur seraient regroupées dans la hiérarchie des chemins. Ainsi, par exemple, les packages d'Adobe seraient de la forme:
com.adobe.reader (Adobe Reader)
com.adobe.photoshop (Adobe Photoshop)
com.adobe.ideas (Adobe Ideas)
[Notez que ce n'est qu'une illustration et que ce ne sont peut-être pas les noms de package exacts.]
Ceux-ci pourraient être mappés en interne (respectivement) pour:
com / adobe / lecteur
com / adobe / photoshop
com / adobe / idées
Le concept provient des conventions de dénomination des packages en Java, plus d'informations à ce sujet ici: *
http://en.wikipedia.org/wiki/Java_package#Package_naming_conventions
Source: http://www.quora.com/Why-do-a-majority-of-Android-package-names-begin-with-com
Le nom du package est utilisé pour une identification unique de votre application.
Android utilise le nom du package pour déterminer si l'application a été installée ou non.
La dénomination générale est:
com.companyname.applicationname
par exemple:
com.android.Camera
http://docs.oracle.com/javase/tutorial/java/package/namingpkgs.html
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 sur example.com.
Les collisions de noms qui se produisent au sein d'une seule entreprise doivent être traitées par convention au sein de cette entreprise, peut-être en incluant la région ou le nom du projet après le nom de l'entreprise (par exemple, com.example.region.mypackage).
Si vous avez un domaine d'entreprise www.example.com
Ensuite, vous devez utiliser:
com.example.region.projectname
Si vous possédez un nom de domaine comme example.co.uk, il devrait l'être:
uk.co.example.region.projectname
Si vous ne possédez pas de domaine, vous devez alors utiliser votre adresse e-mail:
pour name@example.com, cela devrait être:
com.example.name.region.projectname
Com = commercial application (just like .com, most people register their app as a com app)
First level = always the publishing entity's' name
Second level (optional) = sub-devison, group, or project name
Final level = product name
Par exemple, le lanceur Android (écran d'accueil) est Com.Google.android.launcher
Généralement, les 2 premiers "mots" du package sont votre adresse Web inversée. (Vous auriez 3 ici comme convention, si vous aviez un sous-domaine.)
Donc, quelque chose que stackoverflow produit se trouverait probablement dans le package com.stackoverflow.wwhat.customname
quelque chose que asp.net produit pourrait s'appeler net.asp.wwhat.customname.omg.srsly
quelque chose de mysubdomain.toplevel.com serait com.toplevel.mysubdomain.wimporte
Au-delà de cette simple convention, le ciel est la limite. Ceci est une ancienne convention linux pour quelque chose dont je ne me souviens pas exactement ...
spectorsky
dans l'application calendar
est référencé dans l'Explorateur de fichiers de périphérique en tant que com.tmp.spectorsky.calendar
. Je ne comprends pas pourquoi le tmp
niveau apparaît ici?
Mais si votre application Android est uniquement à des fins personnelles ou créée par vous seul, vous pouvez utiliser:
me.app_name.app