Android应用包名称

时间:2013-12-24 03:41:29

标签: java android android-manifest

使用Java创建Android应用程序时,可以将类放入com.example.appName

等包中

但是,在Android XML清单文件中,您还要在那里指定包。

据我了解,上传Android应用的Google Play商店使用套餐名称作为您应用的唯一标识符。

那么,哪个包名实际上标识了您的app / APK文件?您的代码中的包名称是否可以与清单中的包名称不同?

6 个答案:

答案 0 :(得分:7)

只有AndroidManifest.xml中的包名称有效且不得更改。您放入Java类的包可以是任何东西。

答案 1 :(得分:2)

Play商店从清单文件中选取标识符。

如果您的源文件进入同一个包或其他内容,这无关紧要。

因此,您可以将源文件管理/排列到任何所需的任意包中。

通常,将源文件放在与清单文件相同的包/子包中更容易,因此从清单文件中引用它们更容易,因为您不必指定您的活动/服务的完全限定类名等。

答案 2 :(得分:1)

which package name actually identifies your app/APK file?
Play商店将只采用Android清单包。比如package="com.example.appName"

 can the package names in your code be different to the package name in the manifest?

是的,您可以为您的代码使用不同的包,但在manifest.xml中声明时需要提供绝对包名

android:name="org.demo.MyFile"

答案 3 :(得分:1)

Android XML清单文件包是Google Play商店所理解的,因为当您在Google Play商店中上传Android应用程序时,Google Play商店只会读取此文件。

所以,如果你的src包和manifest不同,那么它就没有任何问题。

由于

答案 4 :(得分:0)

我只想补充几点观察: * AndroidManifest的字段包也用于生成类的包(例如R类) *如果您在项目中使用谷歌地图v2,请注意授权中使用的包,因为需要相同。如果你不这样做,它将不会获取地图但在logcat中没有错误消息。 (今天和昨天刚刚发过这个问题)

googlemap v2版本8.1.1 谷歌播放服务4.4.52

答案 5 :(得分:0)

这里的答案似乎与我的经历有点不同。

在Android Studio中,Build.Gradle中的applicationId是重要属性,不应更改。

我们的Manifest软件包名称与我们的applicationId不同,我将它们更改为相同,并且能够毫无错误地将APK上传到Google Play。