script.py 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. # coding:utf8
  2. import os
  3. import xml.etree.ElementTree as ET
  4. ANDROID_NS = 'http://schemas.android.com/apk/res/android'
  5. def script_pre(workspace_sdk_dir, extract_dir, channel_sdk_info, new_game_channel_info, game_info):
  6. modify_manifest(extract_dir)
  7. def modify_manifest(decompileDir):
  8. ET.register_namespace('android', ANDROID_NS)
  9. xmlparse = os.path.join(decompileDir, 'AndroidManifest.xml')
  10. root_node = ET.parse(xmlparse)
  11. root = root_node.getroot()
  12. name = '{' + ANDROID_NS + '}name'
  13. authorities = '{' + ANDROID_NS + '}foregroundServiceType'
  14. package_name = root.attrib.get('package')
  15. if package_name == None:
  16. return
  17. providers = root.findall('./application/service')
  18. if providers != None:
  19. for provider in providers:
  20. providerName = provider.attrib.get(name)
  21. if 'com.wanmei.pwim.ScreenRecorder.ScreenRecorderService' == providerName:
  22. # 使用try 主要是为了 防止此属性不在时,导致的错误,而程序终止
  23. try:
  24. del provider.attrib[authorities]
  25. except:
  26. ""
  27. root_node.write(xmlparse, 'utf-8')
  28. if __name__ == '__main__':
  29. # script("/tmp/ss", "/mnt/share/yanghuang/python_test/any_dir", {"id": "309"}, "", "")
  30. xml_path = "E:/apk/youhua/jingmenfengyue_216122/res/values/public.xml"
  31. # hideSplash("/mnt/share/yanghuang/python_test/cr")