关于命名:Android – 包名称约定

Android - Package Name convention

对于android.com中的"hello world"示例,包名称为"package com.example.helloandroid;"

是否有任何准则/标准来命名这个包?(参考资料会很好)


Android遵循正常的Java包约定,这里是一个重要的文本片段(这对于在Android上开发XML文件的广泛使用很重要)。

相反顺序的原因是与存储介质上的布局有关。如果将应用程序名称中的每个句点(".")视为路径分隔符,则来自发布服务器的所有应用程序都将位于路径层次结构中。例如,来自Adobe的包的形式如下:

com.adobe.reader(Adobe阅读器)

com.adobe.photoshop(Adobe photoshop)

com.adobe.ideas(Adobe想法)

[请注意,这只是一个示例,可能不是确切的包名称。]

这些可以在内部(分别)映射到:

COM/Adobe/阅读器

com/adobe/photoshop网站

COM/Adobe/想法

这个概念来自Java中的包命名约定,更多的是可以读取的。这里:*

http://en.wikipedia.org/wiki/java_package package_命名惯例

来源:http://www.quora.com/why-do-a-majority-of-android-package-names-begin-with-com


包名称用于应用程序的唯一标识。Android使用包名称来确定应用程序是否已安装。一般命名为:

com.companyname.applicationname应用程序名

如:

com.android.camera.摄像头


http://docs.oracle.com/javase/tutorial/java/package/namingpkgs.html

Companies use their reversed Internet domain name to begin their
package names—for example, com.example.mypackage for a package named
mypackage created by a programmer at example.com.

Name collisions that occur within a single company need to be handled
by convention within that company, perhaps by including the region or
the project name after the company name (for example,
com.example.region.mypackage).

如果您有公司域名www.example.com

那么你应该使用:

com.example.region.projectname项目名称

如果您拥有像example.co.uk这样的域名,那么它应该是:

uk.co.example.region.projectname公司

如果您不拥有域,则应使用您的电子邮件地址:

对于[email protected],应该是:

com.example.name.region.projectname项目名称


1
2
3
4
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

例如,安卓发射器(主屏幕)是com.google.android.launcher网站


通常前两个包"words"是反向的网址。(如果你有一个子域,这里有3个作为约定。)

所以stackoverflow产生的东西可能在包com.stackoverflow.whatever.customname中。

可能会调用ASP.NET生成的内容net.asp.whatever.customname.omg.srsly

mysubdomain.toplevel.com上的内容是com.toplevel.mysubdomain.whatever

除了那简单的约定,天空是极限。这是一个旧的Linux约定,我无法准确地回忆起……


但是,如果您的Android应用程序仅用于个人目的或由您自己创建,您可以使用:

1
me.app_name.app