script.py 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. # coding:utf8
  2. __author__ = '极无双'
  3. import os
  4. import logging
  5. import xml.dom.minidom
  6. import re
  7. import shutil
  8. import glob
  9. def script(SDK, decompileDir, channelSdkInfo, new_game_channel_info, gameInfo):
  10. # logging.info('------------SDK:'+SDK)
  11. # logging.info('------------decompileDir:'+decompileDir)
  12. # logging.info('------------channelSdkInfo:'+str(channelSdkInfo))
  13. # logging.info('------------new_game_channel_info:'+str(new_game_channel_info))
  14. # logging.info('------------gameInfo:'+str(gameInfo))
  15. # logging.info("------rm baidu smali------")
  16. # restdir = decompileDir+"/"+"smali_classes2/com/baidu/gamesdk"
  17. # if os.path.exists(restdir):
  18. # shutil.rmtree(restdir)
  19. # s3 = decompileDir + "/smali_classes3"
  20. logging.info('------------channelSdkInfo:' + str(channelSdkInfo))
  21. if channelSdkInfo['SDKName'] != 'reverseforkupai':
  22. del_coolcloud(decompileDir)
  23. def is_reverse_coolcloud(file):
  24. with open(file,'r+') as f:
  25. file_str = f.read()
  26. if 'KFSDK' in file_str:
  27. return True
  28. else:
  29. return False
  30. def del_coolcloud(decompileDir):
  31. smali_files = glob.glob(os.path.join(decompileDir,'smali*/com/coolcloud/'))
  32. if len(smali_files) > 1:
  33. iter_smali = iter(smali_files)
  34. while True:
  35. try:
  36. coolcloud_file_path = iter_smali.next()
  37. file = os.path.join(coolcloud_file_path,'uac/android/api/Coolcloud.smali')
  38. if os.path.exists(file):
  39. logging.info('Coolcloud exits in %s' % coolcloud_file_path)
  40. if not is_reverse_coolcloud(file):
  41. logging.info("delete coolcloud in %s" % coolcloud_file_path)
  42. shutil.rmtree(coolcloud_file_path)
  43. else:
  44. pass
  45. else:
  46. logging.info('Coolcloud not exits in %s' % coolcloud_file_path)
  47. shutil.rmtree(coolcloud_file_path)
  48. except StopIteration:
  49. break
  50. if __name__ == '__main__':
  51. replace_life_method("D:\\work\\jws")