1

我在这里看到命令

aapt dump badging foo.apk

打印指定包的所有详细信息。

是否可以打印任何一个属性,比如 sdkversion?就像是

aapt dump badging -sdkversion foo.apk

PS我在Windows中使用命令提示符。

编辑

我正在尝试将包名称存储在变量中。截至目前,我有这个代码

@echo off
for /f "delims=" %%a in ('aapt dump badging foo.apk') do (
     REM each line of the output
)

我能够检索输出的每一行。现在我必须从字符串中提取包名。例如第一行是

包:name='com.timeplusq.noob' versionCode='15' versionName='1.5'

这是在 for 循环的第一次迭代中检索的。如何从中提取包名。我认为字符串操作会很简单,但事实并非如此。 那么如何从字符串中提取包名呢?

4

1 回答 1

1

如果您在 Unix 系统上或在 Windows 上使用 cygwin,您可以尝试以下命令:

aapt dump badging foo.apk | grep sdkVersion | sed -E "s/^[^:]+:\'(.*)\'$/\1/"

正则表达式将提取grep命令选择的行的值

编辑 :

在 Windows 系统中,您可以使用以下脚本保存为.cmd

@echo off
set property=sdkVersion:'10'
set property=%property:sdkVersion=%
set property=%property:~2,-1%

echo.%property%
于 2012-09-14T14:23:40.710 回答