Android – 包名称约定
对于android.com中的“Hello World”示例,包名称为
"package com.example.helloandroid;"
有没有任何指导/标准来命名这个包? (参考将是很好的)
Android遵循普通的Java包约定,这里是一个重要的文本阅读片段(这对于在android上开发时广泛使用xml文件是很重要的)。
把它倒过来的原因是与存储介质上的布局有关。 如果将应用程序名称中的每个句点('。')都视为path分隔符,则来自发布者的所有应用程序都将一起放在path层次结构中。 所以,例如,来自Adobe的软件包的forms是:
com.adobe.reader(Adobe Reader)
com.adobe.photoshop(Adobe Photoshop)
com.adobe.ideas(Adobe Ideas)
[请注意,这仅仅是一个例子,这可能不是确切的软件包名称。]
这些可以在内部映射(分别)到:
COM /土坯/读者
COM /土坯/ Photoshop中
COM /土坯/想法
这个概念来自于Java中的Package命名惯例,更多的可以在这里阅读:*
http://en.wikipedia.org/wiki/Java_package#Package_naming_conventions
资料来源: 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
公司使用反向的互联网域名来开始他们的软件包名称,例如,由example.com的程序员创build的名为mypackage的软件包的com.example.mypackage。
在单个公司内部发生的名称冲突需要在该公司内按照惯例进行处理,也许通过在公司名称之后包含区域或项目名称(例如,com.example.region.mypackage)来处理。
如果您有公司域名www.example.com
比你应该使用:
com.example.region.projectname
如果您拥有像example.co.uk这样的域名,那么它应该是:
uk.co.example.region.projectname
如果您不拥有域名,则应该使用您的电子邮件地址:
对于name@example.com它应该是:
com.example.name.region.projectname
通常情况下,前两个包的“字”是您的url反向。 (如果你有一个子域名的话,你会在这里按照惯例。
所以stackoverflow产生的东西可能会在包com.stackoverflow.whatever.customname
asp.net生成的东西可能被称为net.asp.whatever.customname.omg.srsly
从mysubdomain.toplevel.com的东西将是com.toplevel.mysubdomain.whatever
除了这个简单的约定之外,天空就是极限。 这是一个旧的Linux约定,我不记得确切的东西…
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
比如他的android启动器(主屏幕)是Com.Google.android.launcher
但是,如果您的Android应用程序仅用于个人用途或由您自己创build,则可以使用:
me.app_name.app