#- * -コーディング:UTF-8 - * - インポート再 インポートのOS インポートzipファイル から biplist インポート * から androguard.core.bytecodes 輸入のapk クラスAnalyzePackage: DEF get_android_data(自己、PACKAGE_FILE): 試してください: apkobj = apk.APK(PACKAGE_FILE ) を除くERRとして例外: プリント(ERR) 他: もしapkobj.is_valid_APK(): versioncode =apkobj.get_androidversion_code() bundle_id = apkobj.get_package() ラベル名 = apkobj.get_app_name() versioname = apkobj.get_androidversion_name() sdk_version = apkobj.get_target_sdk_version() 戻りラベル名、bundle_id、versioncode、versioname、sdk_version DEF get_ios_data(自己、ios_file) : もしzipfile.is_zipfile(ios_file): ipaobj = zipfile.ZipFile(ios_file) info_path = self.get_ios_info_path(ipaobj) もしinfo_path: plist_data = ipaobj.read(info_path) plist_root = readPlistFromString(plist_data) ラベル名 = plist_root [ ' CFBundleDisplayName ' ] versioncode = plist_root [ ' のCFBundleVersion ' ] bundle_id = plist_root [ ' CFBundleIdentifier ' ] 戻りラベル名、bundle_id、versioncode DEF get_ios_info_path(セルフ、ipaobj): infopath_re = re.compile(R' *アプリ/ Info.plistファイル。。' ) のための私でipaobj.namelist(): M = infopath_re.match(I) 場合、mがあるん ではないなし: リターンm.group() デフget_package_size(自己、PACKAGE_PATH): FSIZE = os.path.getsize(PACKAGE_PATH) FSIZE = FSIZE /フロート(* 1024×1024 ) リターンラウンド(FSIZE、2)