Ⅰ android开发怎么获取包名
PackageManager manager = this.getPackageManager();
PackageInfo info = manager.getPackageInfo(this.getPackageName(), 0);
info.packageName就是包名
Ⅱ android安装的时候获取包名
一般这种信息都是放在清单文件中的meta-data标签中吧
<meta-data
android:name="名字"
android:value="推广码" />
context.getApplicationInfo().metaData.getXXX("名字");
Ⅲ android包名和应用名的区别
区别:
包名:是一种文件层次结构,比如你在C盘下建立了文件夹 packet,在packet下建立了文件夹:packetOne,在packetOne下建立了文件夹:packetTwo。 那么包名就是:packet.packetOne.packetTwo
应用名: 是你创建的应用的名字,比如微信这个应用,你创建在packetTwo这个文件夹下。
包名就是开发者定义的名字,这个名字可以随便定义,应用名字是开发包中定义好的。你可以修改包名字,但是应用名字如果开发者不修改你是修改不了的。
Ⅳ 为什么android的package name的名字一般以com.开头
这和android没什么关系,是java的包名命名规范。
一般java的包名命名规范是 com.公司名.项目名
Ⅳ android系统中包名为android是什么应用
下载一个叫“Link2sd”的应用程序,安装后即可看到手机内应用的包名了,望能采纳谢谢!
Ⅵ 新建Android项目时的包名
这样做是希望程序不要造成命名空间污染。 也就是说你现在取的名字可能以后你又会取相同的名字,这样就冲突了。 为了避免这种情况发生,就最好一开始就取得复杂一点。
比方说邮政编码: 414414,这里面包含了你的省份,市,县,街的信息, 我记得前两位是省,然后市,然后县或区,,
如果当初设计邮政的人只把邮编设计成3位,而不是6位,那么很快这些号码就会被用光。因为3位数最大才表示999个乡镇,而6位数可以表示 10万个乡镇。
同样道理,如果好好规划 com.mstar.games.chess.XXX这样一个包,表示mstar公司,游戏项目组,中国象棋项目。
而如果没有好好规划的反而例子是:
1。 com.chess来表示,那全天下做chess的开发人员上万名,就会冲突
2。 com.mstar来表示, 那mstar公司有多个部门多个项目,下次别人也想取这个名字,或者出了问题也不知道是哪个部门负责任。
Ⅶ 如何简单快速获取Android应用包名
如果是要获得手机上的已安装的APP的包名,那么请下载包名查看器软件,直接可以查看.
现在要说的是有一个APP安装包,获取包名的方法:(需要安装NotePad++)
将安装包后缀.apk改为.zip(.rar)
双击打开解压包,找到AndroidManifest.xml,将它单独解压出来即可
如果没有NotePad++也可以尝试在线查看xml文件,查找manifest关键字
Ⅷ android Package name 是什么,有什么用
1、package name是指一个应用的包名,是Android系统中为每一个应用程序分配的一个标识,每个应用的标识都必须是不同的
2、作用:把每个应用区别开,通过package name可以打开app
Ⅸ 如何查看Android应用apk的包名和入口Activity名称
Android开发过程中我们有时需要使用第三方apk资源,而启动第三方apk在某些情况下需要指定相应的包名和启动的Activity名,这个时候就需要获取这两个名称,我们可以使用如下三种方法:
1、使用aapt //aapt是sdk自带的一个工具,在你安装的Eclipse路径下的sdk\build-tools\中,如我的是D:\Eclipse\androidTools\sdk\build-tools\android-4.4.2,如果你下载有apk反编译工具,也可以直接使用里面的aapt
以“GO备份.apk”为例,先进入cmd命令行窗口,然后运行:D: -> Eclipse\androidTools\sdk\build-tools\android-4.4.2
-> aapt mp badging C:\Users\Administrator\Desktop\GO备份.apk,即可获取到AndroidManifest.xml中我们需要的内容,如
package: name='com.jiubang.go.backup.ex'
launchable-activity: name='com.jiubang.go.backup.pro.StartupPageActivity'
2、查看AndroidManifest.xml
同样是查看AndroidManifest.xml,这里我们可以采用反编译方法来获取信息,同样是打开cmd命令行窗口,然后运行:E:
-> apk反编译工具\apktool\apktool -> apktool.bat d -f C:\Users\Administrator\Desktop\GO备份.apk GO备份,然后打开“GO备份”文件夹,打开droidManifest.xml文件,找到manifest节点的package属性值package="com.jiubang.go.backup.ex"语句即为包名,查找android.intent.action.MAIN和android.intent.category.LAUNCHER对应的activity,该activity对应的android:name属性即为入口activity名称,如<activity
android:name="com.jiubang.go.backup.pro.StartupPageActivity"。
3、使用uiautomatorviewer
可以直接在命令行输入uiautomatorviewer,打开获取屏幕截图工具,连接手机,打开所要获取包名的应用,然后获取其截图,根据截图查看package即可,uiautomatorviewer的使用这里就不做介绍了。使用这个需要注意的是,该app必须是有界面的,否则无法获取。
另外,
android.intent.action.MAIN 属性决定应用程序最先启动的Activity
android.intent.category.LAUNCHER属性决定应用程序是否显示在程序列表里
Ⅹ android packname 和apllication id有什么区别
下面介绍来自于android学习手册,里面有源码。android学习手册包含9个章节,108个例子,源码文档随便看,例子都是可交互,可运行,源码采用android studio目录结构,高亮显示代码,文档都采用文档结构图显示,可以快速定位。360手机助手中下载,图标上有贝壳
所有的 Android 应用程序都有一个包名。包名是设备上的这个应用程序的唯一标识,也是在谷歌Play商店上的唯一标识。这意味着,一旦你已发布的程序使用了这个包名, 你就永远都无法改变它;如果修改了就会导致你的应用程序被当作是一个全新的应用程序,你之前的应用程序的用户也不能更新到使用了新的包名的安装包。
在此前的 Android Gradle 构建系统中,您的应用程序的包名由你的manifest文件的根元素里的package属性决定:
AndroidManifest.xml:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.my.app"
android:versionCode="1"
android:versionName="1.0" >
然而,这里所定义的包也有第二个目的:它被用来命名你的资源类的包(以及解析任何相关的Activity的类名)。在上面的示例中,生成的 R 类将会是com.example.my.app.R,因此如果您其他包里面的代码需要引用这些资源,就需要导入com.example.my.app.R。
使用新的 Android Gradle 构建系统,你可以轻松构建多个不同版本的应用程序;例如,您可以构建一个“free”版本和“pro”版本的应用程序 (通过使用flavors),并且这些不同版本的程序在 Google Play 商店上应该有不同的包,这样他们可以被单独安装和购买,或者是同时安装两个,等等。同样,您还可以同时创建“debug”、“alpha”和“beta”版本的应用程序 (使用build types),而这些版本的程序同样可以使用唯一的包名。
同时,您想要在代码中导入的 R 类必须在这段时间内保持不变 ;在您正在构建您的应用程序的不同版本时您的.java 源文件不应该被更改。
因此,我们解耦了包名称的两种用法:
最终的方案是,在您生成的.apk 的manifest 中,并且用于在你的设备和 Google Play 商店来标识你的应用的包,叫做“application id”。
用于在源代码中来引用您的R类的,并且是解析任何相关的Activity/Service 注册的包,继续被称为“package”。
你可以在你 gradle 文件中,指定application id,如下所示:
app/build.gradle:
apply plugin: 'com.android.application'
android {
compileSdkVersion 19
buildToolsVersion "19.1"
defaultConfig {
applicationId "com.example.my.app"
minSdkVersion 15
targetSdkVersion 19
versionCode 1
versionName "1.0"
}
...
像以前一样,你需要在 Manifest 文件中指定用于代码的包,就如上面的AndroidManifest.xml示例一样。
这里说到了最关键的部分:当你像上面那样做时,这两个包是互相独立的。你能够完全自由地重构您的代码——更改用于Activity和Service的内部包,更新你的Manifest里的包,和重构您的导入语句。这都不会影响到你的程序的最终id,这个最终的id的值总是为你的Gradle文件中指定的applicationId的值。(笔者注:packageName在代码中使用,通常在AndroidManifest.xml中指定,applicationId则只是用于程序的标识,通常在build.gradle中指定。这样有一个好处,假如你想发布一个免费版,一个收费版,你只需要在build.gradle中把applicationId后面加上免费版的后缀包名(如".free"),收费版加上收费版的后缀即可,而不需要修改你的其他代码。)
你可以通过使用以下的 Gradle DSL 方法,为不同的flavors和构建类型修改您的应用程序的 applicationId:
app/build.gradle:
proctFlavors {
pro {
applicationId = "com.example.my.pkg.pro"
}
free {
applicationId = "com.example.my.pkg.free"
}
}
buildTypes {
debug {
applicationIdSuffix ".debug"
}
}
....
(在 Android Studio 中,您也可以在项目结构对话框中图形化地进行这些配置。)
注意: 出于兼容性原因,如果您没有在您的 build.gradle 文件中定义 applicationId,这个applicationId 将默认为 AndroidManifest.xml 中所指定的相同的值。在这种情况下,这两个显然未解耦,并且如果你试图重构您的代码也将会意外地更改您的应用程序的 id !在 Android Studio 中,新建的项目始终会指定这两个值。
注 2: 包名称必须始终在默认 AndroidManifest.xml 文件中指定。如果您有多个manifest (例如一个 flavor 的特定的manifest或一个 buildType 的特定的manifest),该包名是可选的,但如果它被指定了,它必须和主manifest中指定的包完全相同。