游戏母包如何解决方法数超限
<h4>
<span style="font-size: 14px; line-height: 3;" line-height:2.5;"=""><span style="line-height:3;font-size:14px;">起因</span></span>
</h4>
<p>
<span style="font-size: 14px; line-height: 3;" line-height:2.5;"="">Android系统中,一个Dex文件中存储方法id用的是short类型数据,所以导致你的dex中方法不能超过65k。由于CP 母包集成过多SDK,或者渠道SDK方法数过多时,两项合并就可能导致渠道包方法数超过65K的限制。</span>
</p>
<h4>
<span style="font-size: 14px; line-height: 3;" line-height:2.5;"="">具体表现 </span>
</h4>
<p class="MsoNormal">
<span style="font-size: 14px; line-height: 3;" line-height:2.5;"="">当打包失败日志中出现这</span><span style="font-size: 14px; line-height: 3;" line-height:2.5;"="">句话时,表示渠道包方法数超限。</span><span></span>
</p>
<p class="MsoNormal">
<span style="font-size:16px;font-family:" line-height:2.5;"=""><img src="https://staticsite.quickapi.net/data/newFiles/20210416/20210416103351FOhv128.png" alt="" /><br />
</span>
</p>
<p class="MsoNormal">
<br />
</p>
<h4>
<span style="line-height: 3; font-size: 14px;" font-size:16px;line-height:2.5;"=""><span style="font-size:14px;line-height:3;">母包处理方法</span></span>
</h4>
<p class="MsoNormal">
<span style="font-family:" font-size:16px;"=""><span style="font-size:14px;line-height:2.5;"></span><span style="font-size:14px;line-height:3;">将母包拆分成多个</span></span><span style="font-family:" font-size:16px;"=""><span style="font-size:14px;line-height:3;">dex,</span><span style="font-size:14px;line-height:3;">使用工具前,请在电脑上安装JDK,详情百度安装</span><span style="font-family:" font-size:14px;white-space:normal;line-height:2.5;"=""></span><span style="font-size:14px;line-height:3;">;</span></span>
</p>
<p class="MsoNormal">
<br />
</p>
<p class="MsoNormal">
<span style="font-family:" font-size:16px;"=""><span style="font-size:14px;line-height:3;">1.首先将母包移动到反编译脚本或者反编译工具中</span><span style="font-size:14px;line-height:3;">(</span><span style="line-height: 3; font-size: 14px;" font-size:14px;white-space:normal;"="">切记不是双击脚本运行</span><span style="font-size:14px;line-height:3;">),</span><span style="font-size:14px;"></span><span style="font-size:14px;line-height:3;">反编译得到以下文件夹列表,在此文件目录下,新建一个</span></span><span style="line-height: 3; font-size: 14px;" font-size:14px;"="">smali_classes2/com</span><span style="line-height: 3; font-size: 14px;" font-size:14px;"="">文件夹路径;</span><span></span>
</p>
<p class="MsoNormal" style="text-indent:21.0pt;">
<img src="http://data.tool.quicksdk.net/data/newFiles/image/20190315/201903151606197Szu105.jpg" alt="" />
</p>
<p class="MsoNormal">
<img src="http://data.tool.quicksdk.net/data/newFiles/image/20190315/20190315160628bLjb632.jpg" alt="" />
</p>
<p class="MsoNormal">
<span style="line-height: 3; font-size: 14px;" font-size:14px;line-height:2.5;"="">2.进入</span><span style="line-height: 3; font-size: 14px;" font-size:14px;line-height:2.5;"="">smali/com</span><span style="line-height: 3; font-size: 14px;" font-size:14px;line-height:2.5;"="">文件夹,将里面的部分代码文件夹剪切移动到刚刚新建的</span><span style="font-family:" font-size:14px;line-height:2.5;"=""><span style="line-height:3;font-size:14px;">smali_cl</span><span style="white-space:normal;line-height:3;font-size:14px;">a</span><span style="line-height:3;font-size:14px;">sses2/com </span></span><span style="line-height: 3; font-size: 14px;" font-size:14px;line-height:2.5;"="">路径下(注意</span><span style="line-height: 3; font-size: 14px;" font-size:14px;line-height:2.5;"="">quicksdk</span><span style="line-height: 3; font-size: 14px;" font-size:14px;line-height:2.5;"="">相关的文件夹,以及游戏</span><span style="line-height: 3; font-size: 14px;" font-size:14px;line-height:2.5;"="">Application</span><span style="line-height: 3; font-size: 14px;" font-size:14px;line-height:2.5;"="">启动相关的文件夹不能移动,比如</span><span style="line-height: 3; font-size: 14px;" font-size:14px;line-height:2.5;"="">Application</span><span style="line-height: 3; font-size: 14px;" font-size:14px;line-height:2.5;"="">的路径
以及</span><span style="line-height: 3; font-size: 14px;" font-size:14px;line-height:2.5;"=""> Application</span><span style="line-height: 3; font-size: 14px;" font-size:14px;line-height:2.5;"="">中调用了某些</span><span style="line-height: 3; font-size: 14px;" font-size:14px;line-height:2.5;"="">sdk</span><span style="line-height: 3; font-size: 14px;" font-size:14px;line-height:2.5;"="">的接口)</span><span></span>
</p>
<p class="MsoNormal">
<img src="http://data.tool.quicksdk.net/data/newFiles/image/20190315/20190315160740CXlg121.jpg" alt="" />
</p>
<p class="MsoNormal">
<span style="font-size:16px;font-family:;" "=""> </span>
</p>
<p class="MsoNormal">
<span style="line-height: 3; font-size: 14px;" font-size:14px;"="">3.修改母包信息,反编译母包之后,如果游戏想修改游戏母包的</span><span style="line-height: 3; font-size: 14px;" font-size:14px;"="">targetVersion</span><span style="line-height: 3; font-size: 14px;" font-size:14px;"="">或者游戏版本号(名),可打开外层文件夹的</span><span style="line-height: 3; font-size: 14px;" font-size:14px;"="">apktool.yml</span><span style="line-height: 3; font-size: 14px;" font-size:14px;"="">这个文件修改;</span><span></span>
</p>
<p class="MsoNormal" style="text-indent:21.0pt;">
<img src="http://data.tool.quicksdk.net/data/newFiles/image/20190315/20190315160807SgIC704.jpg" alt="" /><span style="font-size:16px;font-family:;" "=""></span>
</p>
<p class="MsoNormal">
<span style="font-size:16px;font-family:;" "=""> </span>
</p>
<p class="MsoNormal">
<span style="font-size:16px;font-family:;" "=""> </span>
</p>
<p class="MsoNormal">
<span style="line-height: 3; font-size: 14px;" font-size:14px;"=""><br />
</span>
</p>
<p class="MsoNormal">
<span style="line-height: 3; font-size: 14px;" font-size:14px;"="">4.回编译母包,回编译脚本执行完成之后,会在同路径下生成</span><span style="line-height: 3; font-size: 14px;" font-size:14px;"="">dist</span><span style="line-height: 3; font-size: 14px;" font-size:14px;"="">文件夹,回编译生成的包就在里面</span><span></span>
</p>
<p class="MsoNormal">
<span style="font-family:" font-size:14px;"=""> </span>
</p>
<p class="MsoNormal">
<span style="line-height: 3; font-size: 14px;" font-size:14px;line-height:2.5;"=""><br />
</span>
</p>
<p class="MsoNormal">
<br />
</p>
<p class="MsoNormal">
<span style="line-height: 3; font-size: 14px; color: rgb(229, 51, 51);" font-size:14px;line-height:2.5;"=""><strong>注意事项:</strong></span>
</p>
<p class="MsoNormal">
<span style="line-height: 3; font-size: 14px; color: rgb(229, 51, 51);" font-size:14px;line-height:2.5;"="">1. 除了com下,别的文件也可以移动,只要保证游戏application及其父类、QuickSDK的代码,以及闪屏在smali下即可</span>
</p>
<p class="MsoNormal">
<span style="line-height: 3; font-size: 14px;" font-size:14px;line-height:2.5;"=""><span style="color:#E53333;">2. 可以创建多个smali_classesX文件夹,如smali_classes2 smali_classes3 smali_classes4 ...</span><span style="color:#E53333;">最好是把母包的大部分方法移动到smali_classes3及以后的文件夹内</span><br />
<span style="color:#E53333;">3. </span><span style="color:#E53333;">任何调用了qk的方法,接口的类也只能放在sm</span><span style="color:#E53333;">ali下, 不能分qk的方法</span><span style="color:#E53333;"></span><br />
<span style="color:#E53333;"></span><br />
</span>
</p>
<p class="MsoNormal">
<span style="line-height: 3; font-size: 14px;" font-size:14px;line-height:2.5;"=""><span style="white-space:normal;font-size:14px;">附:</span></span>
</p>
<p class="MsoNormal">
<br />
</p>
<p class="MsoNormal">
<span style="font-family:" font-size:14px;line-height:2.5;"=""><br />
</span>
</p>
<h4>
<span style="line-height: 3; font-size: 14px;" font-size:14px;line-height:2.5;"="">反编译脚本工具下载: </span>
</h4>
<p class="MsoNormal">
<span style="font-size:14px;"><span style="font-size:14px;"><a href="https://pan.baidu.com/s/19FVc_e_asEO8IZxrlUHtWQ" target="_blank">https://pan.baidu.com/s/19FVc_e_asEO8IZxrlUHtWQ</a></span> 提取码: mmp8</span><span style="font-size:14px;"></span>
</p>
<p class="MsoNormal">
<span style="font-family:" font-size:14px;line-height:2.5;"=""><strong><br />
</strong></span>
</p>
<p class="MsoNormal">
<span style="font-family:" font-size:14px;line-height:2.5;"=""><strong><span style="line-height:3;font-size:14px;">反编译工具使用可参考文档</span></strong><span style="line-height:3;font-size:14px;">:</span></span>
</p>
<p class="MsoNormal">
<a href="https://www.quicksdk.com/doc-891.html?cid=9" target="_blank"><span style="line-height:3;font-size:14px;">如何使用反编译工具</span></a>
</p>
<p class="MsoNormal">
<span style="font-family:" font-size:16px;"=""><br />
</span>
</p>
<p class="MsoNormal">
<span style="font-family:" font-size:16px;"=""><img src="http://data.tool.quicksdk.net/data/newFiles/image/20190315/20190315160904YAtn503.jpeg" alt="" /><span style="font-size:16px;font-family:;" "=""></span><br />
</span>
</p>