# -*- coding:utf-8 -*-
import re
import os
import zipfile
from biplist import *
from androguard.core.bytecodes import apk class AnalyzePackage:
def get_android_data(self, package_file):
try:
apkobj = apk.APK(package_file)
except Exception as err:
print(err)
else:
if apkobj.is_valid_APK():
versioncode = apkobj.get_androidversion_code()
bundle_id = apkobj.get_package()
labelname = apkobj.get_app_name()
versioname = apkobj.get_androidversion_name()
sdk_version = apkobj.get_target_sdk_version()
return labelname, bundle_id, versioncode, versioname, sdk_version def get_ios_data(self, ios_file):
if zipfile.is_zipfile(ios_file):
ipaobj = zipfile.ZipFile(ios_file)
info_path = self.get_ios_info_path(ipaobj)
if info_path:
plist_data = ipaobj.read(info_path)
plist_root = readPlistFromString(plist_data)
labelname = plist_root['CFBundleDisplayName']
versioncode = plist_root['CFBundleVersion']
bundle_id = plist_root['CFBundleIdentifier']
return labelname, bundle_id, versioncode def get_ios_info_path(self, ipaobj):
infopath_re = re.compile(r'.*.app/Info.plist')
for i in ipaobj.namelist():
m = infopath_re.match(i)
if m is not None:
return m.group() def get_package_size(self,package_path):
fsize = os.path.getsize(package_path)
fsize = fsize / float(1024 * 1024)
return round(fsize, 2)

最新文章

  1. hightcharts 3d 堆积图下钻
  2. LINUX中如何查看某个进程打开的网络链接有多少
  3. Redis的安装和使用
  4. flv文件格式解析!!!
  5. Hibernate中的多对多映射
  6. 转发:maven打包时始终出现以下提示:-source 1.3 中不支持泛型(请使用 -source 5 或更高版本以启用泛型)
  7. 人一生必看的100部电影(全球最佳电影排名榜TOP250)
  8. C#简单邮件发送
  9. KeyTool
  10. E - Catch That Cow
  11. 已知的CPropertysheet bug: 切换焦点导致无响应
  12. 云计算与虚拟化以及IaaS, PaaS和SaaS
  13. Git提交过程的一些问题
  14. MiniGUI + Hi3531 笔记 .
  15. 线性表的顺序存储设计和实现 - API函数实现
  16. 面试之路(7)-BAT面试题之计算机的三大原则
  17. word里面对齐用Tab键
  18. ArrayList 初学小结!
  19. 类(class)相关概念小结
  20. springboot 整合 mongodb实现 批量更新数据

热门文章

  1. Unity热更新 AssetBundle
  2. 华为 huawei 查看系统中存在的安全风险信息 display security risk
  3. c++面向对象程序设计第四章课后习题
  4. 2019牛客暑期多校训练营(第五场)- G subsequence 1
  5. Vue:不同页面之间的传递参数--params
  6. 【转帖】NAT类型及转换原理深入剖析
  7. Hadoop-(Flume)
  8. Elastic Search中normalization和分词器
  9. 怎样禁止 html 中 <textarea> 标签可以拉伸改变大小 ?
  10. TCP/IP协议栈各个层次及分别的功能