import os
def getName(AAPTLocation, apkFile):
AAPTLocation = AAPTLocation.replace('\\','\\\\')
apkFile = apkFile.replace('\\','\\\\')
pname = ''
cmd = ' \"\"' + AAPTLocation + '\" dump badging \"' + apkFile + '\"\"'
p = os.popen(cmd)
while 1:
s = p.readline()
if s:
print s
if s.find('package') != -1 and s.find('name') != -1:
pname = s
if not s:
break
p.close()
return pname
AAPTLocation = 'C:\Program Files\Android\android-sdk\platform-tools\aapt.exe'
apkFile = 'C:\APKs\test.apk'
print getName(AAPTLocation, apkFile)
我要跑了aapt.exe文件,获取apk的包名并解析结果。在
运行“C:\Program Files\Android\Android sdk\platform tools\aapt.exe文件“转储徽标”C:\APKs\测试.apk“直接在命令行界面中运行良好。不过,在我粘贴到上面的python脚本中,它没有给我任何东西。在
我已经试过避开反斜杠了,但这一点也没用。我的代码有问题吗?。在
您需要将python文本中的斜杠加倍,否则将被解释为转义代码的开头:
请注意,在第一个示例(来自代码)中,python如何将
\a
条目解释为hex07字符,即BELL的ASCII代码。在另一种方法是使用原始python字符串文本,在其前面加上字母
^{pr2}$r
:有关字符串转义如何在字符串文本中工作的详细信息,请参见the string literals documentation。在
相关问题 更多 >
编程相关推荐