1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- import os.path
- import file_utils
- def execute(game, sdk, config):
- if not checkConfig(config):
- return 1
- subChannel = config['subChannel']
- createJmhyProperties(game, sdk, subChannel, config)
- return copyWechatCode(game, sdk, subChannel, config)
- def checkConfig(config):
- '''
- 检查配置
- '''
- if 'properties' not in config:
- print('properties not exists in config')
- return False
- properties = config['properties']
- if 'agent' not in properties or 'version' not in properties:
- print('agent or version not exists in properties')
- return False
- '''if 'appid' not in config or 'appkey' not in config:
- print('appid or appkey not exists in config')
- return False'''
- return True
- def createJmhyProperties(game, sdk, subChannel, config):
- '''
- 创建jmhy.properties
- '''
- print('create jmhy.properties')
- propValue = config['properties']
- decompliePath = file_utils.get_decompile_path(game, sdk, subChannel, config['cache'])
- properties = os.path.join(decompliePath, 'assets', 'jmhy.properties')
- content = ''
- for key in propValue:
- content = '%s%s=%s\n' % (content, key, propValue[key])
- print('write properties : %s = %s' % (key, propValue[key]))
- file_utils.create_file(properties, content)
- return 0
- def copyWechatCode(game, sdk, subChannel, config):
- '''
- 拷贝微信sdk的代码
- '''
- print('copy WXPayEntryActivity.smali')
- sdkPath = file_utils.get_full_sdk_path(sdk)
- WXPayEntryActivity = 'WXPayEntryActivity.smali'
- wxFile = os.path.join(sdkPath, 'smali', WXPayEntryActivity)
- decompliePath = file_utils.get_decompile_path(game, sdk, subChannel, config['cache'])
- smaliPath = os.path.join(decompliePath, 'smali')
- targetPath = file_utils.get_package_path(smaliPath, config['packageName'])
- targetFile = os.path.join(targetPath, 'wxapi', WXPayEntryActivity)
- ret = file_utils.copy_file(wxFile, targetFile)
- if ret:
- return ret
- file_utils.replace_content(targetFile, '${packageName}', config['packageName'].replace('.', '/'))
- return 0
|