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:\ ProgramFiles \ Android \ android-sdk \ platform-tools \ aapt.exe」ダンプバッジ「C:\ APKs\test.apk」を実行すると正常に機能します。ただし、上に貼り付けたPythonスクリプトでは、何も表示されません。
すでにバックスラッシュをエスケープしようとしましたが、まったく違いはありません。私のコードに何か問題がありますか?