script.py 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. # -*- coding:utf-8 -*-
  2. __author__ = 'ALIXie'
  3. import os
  4. import logging
  5. import gw_data_center
  6. import gw_apk_tool
  7. def script_init(workspace_sdk_dir, extract_dir, channelSdkInfo, new_game_channel_info, game_info):
  8. gw_data_center.pack_small = False
  9. gw_apk_tool.__apk_tool__ = 'apktool_2.6.0.jar'
  10. return
  11. def script_last(workspace_sdk_dir, extract_dir, channel_sdk_info, new_game_channel_info, game_info):
  12. logging.info('channel_sdk_info: ' + str(channel_sdk_info))
  13. if channel_sdk_info['id'] == '549':
  14. add_life_cycle(extract_dir)
  15. def add_life_cycle(extract_dir):
  16. tfile = os.path.join(extract_dir, 'smali/com/unity3d/player/UnityPlayerActivity.smali')
  17. print tfile
  18. logging.info(tfile)
  19. if os.path.isfile(tfile):
  20. with open(tfile, 'r+') as f:
  21. cont = f.readlines()
  22. for lin in cont:
  23. if lin.replace('\n', '').strip(' ') == '.method protected onPause()V':
  24. a = cont.index(lin)
  25. cont.insert(a + 2, ' invoke-static {}, Lcom/kf/framework/SDKPluginWrapper;->onPause()V')
  26. if lin.replace('\n', '').strip(' ') == '.method protected onResume()V':
  27. b = cont.index(lin)
  28. cont.insert(b + 2, ' invoke-static {}, Lcom/kf/framework/SDKPluginWrapper;->onResume()V')
  29. with open(tfile, 'w') as tf:
  30. tf.write(''.join(cont))
  31. if __name__ == "__main__":
  32. add_life_cycle("C:\\Users\\Administrator\\Desktop\\longzhu")