Per l'esempio "Hello World" in android.com , il nome del pacchetto è
"package com.example.helloandroid;"
Esistono linee guida / standard per nominare questo pacchetto? (i riferimenti sarebbero carini)
Per l'esempio "Hello World" in android.com , il nome del pacchetto è
"package com.example.helloandroid;"
Esistono linee guida / standard per nominare questo pacchetto? (i riferimenti sarebbero carini)
Risposte:
Android segue le normali convenzioni dei pacchetti java, inoltre ecco un importante frammento di testo da leggere (questo è importante per quanto riguarda l'ampio uso di file xml durante lo sviluppo su Android).
Il motivo per averlo in ordine inverso è a che fare con il layout sul supporto di archiviazione. Se si considera ogni punto ('.') Nel nome dell'applicazione come un separatore di percorso, tutte le applicazioni di un editore si collocherebbero insieme nella gerarchia del percorso. Quindi, per esempio, i pacchetti di Adobe sarebbero nel formato:
com.adobe.reader (Adobe Reader)
com.adobe.photoshop (Adobe Photoshop)
com.adobe.ideas (Adobe Ideas)
[Si noti che questa è solo un'illustrazione e questi potrebbero non essere i nomi esatti del pacchetto.]
Questi potrebbero essere mappati internamente (rispettivamente) a:
com / adobe / lettore
com / adobe / photoshop
com / adobe / idee
Il concetto deriva dalle Convenzioni di denominazione dei pacchetti in Java, di cui puoi leggere di più qui: *
http://en.wikipedia.org/wiki/Java_package#Package_naming_conventions
Fonte: http://www.quora.com/Why-do-a-majority-of-Android-package-names-begin-with-com
Il nome del pacchetto viene utilizzato per l'identificazione univoca per l'applicazione.
Android utilizza il nome del pacchetto per determinare se l'applicazione è stata installata o meno.
La denominazione generale è:
com.companyname.applicationname
per esempio:
com.android.Camera
http://docs.oracle.com/javase/tutorial/java/package/namingpkgs.html
Le aziende utilizzano il nome di dominio Internet invertito per iniziare i nomi dei pacchetti, ad esempio com.example.mypackage per un pacchetto denominato mypackage creato da un programmatore su example.com.
Le collisioni di nomi che si verificano all'interno di una singola azienda devono essere gestite per convenzione all'interno di quella società, magari includendo la regione o il nome del progetto dopo il nome della società (ad esempio com.example.region.mypackage).
Se disponi di un dominio aziendale www.example.com
Quindi dovresti usare:
com.example.region.projectname
Se possiedi un nome di dominio come example.co.uk di quanto dovrebbe essere:
uk.co.example.region.projectname
Se non possiedi un dominio, devi utilizzare il tuo indirizzo email:
per nome@esempio.com dovrebbe essere:
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
Ad esempio, il launcher Android (schermata iniziale) è Com.Google.android.launcher
Generalmente le prime 2 parole "pacchetto" sono il tuo indirizzo web al contrario. (Ne avresti 3 qui come convenzione, se avessi un sottodominio.)
Quindi qualcosa che stackoverflow produce sarebbe probabilmente nel pacchetto com.stackoverflow.whatever.customname
qualcosa che asp.net produce potrebbe essere chiamato net.asp.whatever.customname.omg.srsly
qualcosa da mysubdomain.toplevel.com sarebbe com.toplevel.mysubdomain.whatever
Oltre quella semplice convenzione, il cielo è il limite. Questa è una vecchia convenzione di Linux per qualcosa che non ricordo esattamente ...
spectorsky
nell'applicazione calendar
è rinominato in Device File Explorer come com.tmp.spectorsky.calendar
. Non riesco a capire perché il tmp
livello appare qui?
Ma se la tua app Android è solo per scopi personali o creata da te solo, puoi utilizzare:
me.app_name.app