如何简单快速获取Android应用包名

一、

android获取应用包名_获取apk包名android获取应用包名_获取apk包名


android获取应用包名_获取apk包名


android获取应用包名_获取apk包名


android获取应用包名_获取apk包名


先说明一下这里讲的方法是通用的,而网上其他方法获取PackageName不通用(因为他是建立在root的基础上的,我不敢保证你的设备已经root)。

①在android设备上点击一下你要测试的应用,然后就不用作设备了。

②在PC上的命令行输入:adb logcat>D:/log.txt :I

在这里的D:/log.txt你可以改成其他的路径,但是一定要先确保路径下没有这个文件,不然的话你以前的文件就被改掉了,一定要小心。

③按下Ctrl+c先停掉(为了避免过多的新信息)。打开刚刚的那个文件D:/log.txt。从文件下面开始找下面格式的信息

I/ActivityMar( 数字): Displayed 包名/类名: +数字ms

例如我的信息如下:

I/ActivityMar( 272): Displayed : +315ms

不过你可能会发现有很多这种格式的信息,到底哪个才是你需要的呢,如果你严格按照刚刚的步骤做的话,那么很可能是下面那条信息,即使不是那么也肯定是下面几条信息中的某一条,这需要你根据应用进行辨别。

二、使用aapt工具

cmd中进入到aapt所在目录,输入

aapt dump badging 包路径

就可以看到包名和权限等信息了

android开发怎么获取包名

PackageMar mar = this.getPackageMar();

PackageInfo = mar.getPackageInfo(this.getPackageName(), 0);

.packageName就是包名

Android 查看apk包名、当前Activity名等

1、查看当前运行app的包名

2、通过包名查找apk的安装路径

3、查看当前运行的Activity名称

4、获取第三方APK的包名和入口类名

请问如何获取安卓正在前台运行的应用程序的包名?

在framework中想添加这个功能,所以写了个appliction来实现一下获取正在运行的应用程序: 还是先看图吧: 这个app主要是简单的实现了获取非系统的应用程序和一些常用的系统应用程序,显示在一个listview中,并添加了点击(回复到你打开的界面)和长按(关闭应用程序)。 看看代码吧: 直接贴出来再加上注释吧(直接写在一个文件里): package andorid/apk/res/android" android:layout_width="fill_parent" android:layout_height="wrap_content" android:orientation="horizontal" > main: 在manifest文件中要加以个权限: 主要是前面的am.killBackgroundProcesses(packageName);方法要这个权限。

android5.0之后,如何获取当前顶端包名

//获取到栈顶应用程序的包名

public String getTopActivty() {

String topPackageName="888";

//android5.0以上获取方式

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) {

Intent intent = new Intent(Settings.ACTION_USAGE_ACCESS_SETTINGS);

intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

startActivity(intent);

UsageStatsMar mUsageStatsMar = (UsageStatsMar) getSystemServ(Context.USAGE_STATS_SERVICE);

long time = System.currentTimeMillis();

List stats = mUsageStatsMar.queryUsageStats(UsageStatsMar.INTERVAL_DAILY, time - 1000 10, time);

if (stats != null) {

SortedMap mySortedMap = new TreeMap();

for (UsageStats usageStats : stats) {

mySortedMap.put(usageStats.getLastTimeUsed(), usageStats);

}if (mySortedMap != null && !mySortedMap.isEmpty()) {

topPackageName = mySortedMap.get(mySortedMap.lastKey()).getPackageName();

Log.e("TopPackage Name", topPackageName);

}}

}//android5.0以下获取方式

else{

List tasks = activityMar.getRunningTasks(1);

ActivityMar.RunningTaskInfo taskInfo = tasks.get(0);

topPackageName = }return topPackageName;

}

怎样获取应用的包名和类名及解析aapt

原理:

通过查看AndroidManifest.xml

方法:

可以通过如下方法获得:

1.aapt

aapt dump xmltree apk路径 AndroidManifest.xml > 输入的路径

2.apktool 反编译

apktool d -f apk路径 输出的路径

3.monkey---Android自带的工具

adb shell monkey --port 1080 -v -v

aapt即 Android Asset Packaging Tool

该工具在SDK/tools目录下,如果你没有设置环境变量,那需要进入该目录下才能运行aapt命令,如果设置了环境变量则可以在任何目录下运行aapt命令了。

1、列出压缩文件目录

aapt l[ist] [-v] [-a] file.{zip,jar,apk}

参数:

-v:会以table的形式输出目录,table的表目有:Length、Mod、Size、Ratio、Date、Time、CRC-32、Name。其中Mod表示压缩形式,有Deflate和Stored两种,即该Zip目录采用的算法是压缩模式还是存储模式;Ratio表示压缩率。

-a:会详细输出所有目录的内容。

2、查看APK的相关信息

aapt d[ump] [--values] WHAT file.{apk} [asset [asset ...]]

badging Print the label and icon for the app declared in APK.

permissions Print the permissions from the APK.

resources Print the resource table from the APK.

configurations Print the configurations in the APK.

xmltree Print the compiled xmls in the given assets.

xmlstrings Print the strings of the given compiled xml assets.

1)、查看APK包的packageName、versionCode、applicationLabel、launcherActivity、permission等各种详细信息

aapt dump badging < file.apk>

2)、查看权限

aapt dump permissions

3)、查看资源列表

aapt dump resources

把查看信息保存到文件中去可以使用:

aapt dump resources > sodino.txt

4)、查看APK配置信息

aapt dump configurations

5)、查看指定APK的指定XML文件

aapt dump xmltree res/.xml

以树形结构输出的xml信息。

aapt dump xmlstrings res/.xml

输出xml文件中所有的字符串信息。

3、编译android资源

aapt p[ackage] [-d][-f][-m][-u][-v][-x][-z][-M AndroidManifest.xml]

[-0 extension [-0 extension ...]] [-g tolerance] [-j jarfile]

[--debug-mode] [--min-sdk-version VAL] [--target-sdk-version VAL]

[--app-version VAL] [--app-version-name TEXT] [--custom-package VAL]

[--rename-manifest-package PACKAGE]

[--rename-instrumentation-target-package PACKAGE]

[--utf16] [--auto-add-overlay]

[--max-res-version VAL]

[-I base-package [-I base-package ...]]

[-A asset-source-dir] [-G class-list-file] [-P public-definitions-file

[-S resource-sources [-S resource-sources ...]]

[-F apk-file] [-J R-file-dir]

[--product product1,product2,...]

[-c CONFIGS] [--preferred-configurations CONFIGS]

[-o]

[raw-files-dir [raw-files-dir] ...]

Package the android resources. It will read assets and resources that are

supplied with the -M -A -S or raw-files-dir arguments. The -J -P -F and -R

options control which files are output.

部分参数解释:

-f:如果编译出来的文件已经存在,强制覆盖;

-m:使生成的包的目录放在-J参数指定的目录;

-J:指定生成的R.Ja的输出目录;

-S:res文件夹路径;

-A:assert文件夹的路径;

-M:AndroidManifest.xml的路径;

-l:某个版本平台的android.jar的路径;

-F:具体指定APK文件的输出

1)、将工程的资源编译出R.ja文件

aapt package –m –J -S -l -M

2)、将工程的资源编译到一个包里

aapt package –f –S -l -A -M

-F <输出的包目录>

4、打包好的APK中移除文件

aapt r[emove] [-v] file.{zip,jar,apk} file1 [file2 ...]

5、添加文件到打包好的APK中

aapt a[dd] [-v] file.{zip,jar,apk} file1 [file2 ...]

6、显示aapt的版本

aapt v[ersion]