how to print a specified parameter when using aapt dump

蓝咒 提交于 2019-12-24 08:03:00

问题


I saw here that the command

aapt dump badging foo.apk

prints all the details of the specified package.

Is it possible to print any one property, say sdkversion? Something like

aapt dump badging -sdkversion foo.apk

P.S I'm using command prompt in windows.

EDIT

I am trying to store the package name in a variable. As of now, I have this code

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

I am able to retrieve each line of the output. Now I have to extract the package name from the string. For instance the first line is

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

which is retrieved in the first iteration of the for loop. How do I extract the package name from it. I thought string manipulation would be straight forward, it is not. So how do I extract the package name from the string?


回答1:


If you're on a Unix system or having cygwin on Windows, you could try this command :

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

the regexp will extract the value of the line selected by grep command

EDIT :

In a Windows system, you can use the following script saved as a .cmd :

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

echo.%property%


来源:https://stackoverflow.com/questions/12426137/how-to-print-a-specified-parameter-when-using-aapt-dump

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!