如何查看Android应用apk的包名和入口Activity名称

如何查看Android应用apk的包名和入口Activity名称,第1张

Android开发过程中我们有时需要使用第三方apk资源,而启动第三方apk在某些情况下需要指定相应的包名和启动的Activity名,这个时候就需要获取这两个名称,我们可以使用如下三种方法:

1、使用aapt //aapt是sdk自带的一个工具,在你安装的Eclipse路径下的sdk\build-tools\中,如我的是D:\Eclipse\androidTools\sdk\build-tools\android-442,如果你下载有apk反编译工具,也可以直接使用里面的aapt

以“GO备份apk”为例,先进入cmd命令行窗口,然后运行:D: -> Eclipse\androidTools\sdk\build-tools\android-442

-> aapt dump badging C:\Users\Administrator\Desktop\GO备份apk,即可获取到AndroidManifestxml中我们需要的内容,如

package: name='comjiubanggobackupex'

launchable-activity: name='comjiubanggobackupproStartupPageActivity'

2、查看AndroidManifestxml

同样是查看AndroidManifestxml,这里我们可以采用反编译方法来获取信息,同样是打开cmd命令行窗口,然后运行:E:

-> apk反编译工具\apktool\apktool -> apktoolbat d -f C:\Users\Administrator\Desktop\GO备份apk GO备份,然后打开“GO备份”文件夹,打开droidManifestxml文件,找到manifest节点的package属性值package="comjiubanggobackupex"语句即为包名,查找androidintentactionMAIN和androidintentcategoryLAUNCHER对应的activity,该activity对应的android:name属性即为入口activity名称,如<activity

android:name="comjiubanggobackupproStartupPageActivity"。

3、使用uiautomatorviewer

可以直接在命令行输入uiautomatorviewer,打开获取屏幕截图工具,连接手机,打开所要获取包名的应用,然后获取其截图,根据截图查看package即可,uiautomatorviewer的使用这里就不做介绍了。使用这个需要注意的是,该app必须是有界面的,否则无法获取。

另外,

androidintentactionMAIN 属性决定应用程序最先启动的Activity

androidintentcategoryLAUNCHER属性决定应用程序是否显示在程序列表里

桌面的名字是第一个activity的android:label。

进程的名字是application的android:label。

getApplicationLabel获取的是application的android:label。

希望能帮到你。

魅族内置相机apk提取对于大多数普通用户来说是不可行的,因为这需要一定的专业知识和技能。不过,如果您非常熟悉安卓系统,并且有一定的技术能力,可以尝试下面的方法来提取魅族内置相机apk:

1 首先,需要将手机Root,以便可以访问系统文件。

2 然后,在手机上安装一个Root Explorer(文件管理器)应用程序,比如ES文件浏览器。

3 打开Root Explorer,进入/system/app目录,找到名为Cameraapk的文件,这就是魅族内置相机apk文件。

4 长按Cameraapk文件,选择“复制到”,将文件复制到手机存储中的任意文件夹中。

5 使用文件管理器打开存储文件夹,找到复制的Cameraapk文件,点击安装即可。

需要注意的是,这种方法存在一定的风险,因为如果您不小心删除或修改了系统文件,可能会导致手机无法正常使用。另外,此方法只适用于Root过的手机,对于未Root的手机无法 *** 作。因此,建议非专业人士不要轻易尝试,以免造成不必要的麻烦。如果您需要魅族相机apk,请尝试从官方渠道下载或联系厂商获取。

原理:

通过查看AndroidManifestxml

方法:

可以通过如下方法获得:

1aapt

aapt dump xmltree apk路径 AndroidManifestxml > 输入的路径

2apktool 反编译

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

3monkey---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、Method、Size、Ratio、Date、Time、CRC-32、Name。其中Method表示压缩形式,有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 < fileapk>

2)、查看权限

aapt dump permissions <fileapk>

3)、查看资源列表

aapt dump resources <fileapk>

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

aapt dump resources <file_pathapk> > sodinotxt

4)、查看APK配置信息

aapt dump configurations <file_pathapk>

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

aapt dump xmltree <file_pathapk> res/xml

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

aapt dump xmlstrings <file_pathapk> res/xml

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

3、编译android资源

aapt p[ackage] [-d][-f][-m][-u][-v][-x][-z][-M AndroidManifestxml] \

[-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:指定生成的RJava的输出目录;

-S:res文件夹路径;

-A:assert文件夹的路径;

-M:AndroidManifestxml的路径;

-l:某个版本平台的androidjar的路径;

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

1)、将工程的资源编译出Rjava文件

aapt package –m –J <Rjava目录> -S <res目录> -l <androidjar目录> -M

<AndroidManifestxml目录>

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

aapt package –f –S <res目录> -l <androidjar目录> -A <assert目录> -M

<AndroidManifestxml目录> -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]

以上就是关于如何查看Android应用apk的包名和入口Activity名称全部的内容,包括:如何查看Android应用apk的包名和入口Activity名称、如何获取《未》安装的apk包的应用名称、魅族内置相机apk提取等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9601018.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-30
下一篇2023-04-30

发表评论

登录后才能评论

评论列表(0条)

    保存