【Winlator教程】加入简陋终端修改

原创 hostei  2025-03-22 09:50  阅读 84 次

需要文件:https://www.123684.com/s/lJz7Vv-M0r2A
1、修改AndroidManifest.xml,加入终端新页面的申明

2、修改resources.arsc ,添加简陋终端菜单的id
id/id结尾添加

id/type-info结尾添加,注意id=后的值不要照抄,
是上一个id+1,因为是16进制的0-f,最大是f

复制并记住menu_item_termux的id值

3、修改res/menu/main_menu.xml,主界面菜单添加简陋终端
选项

4、修改classes.dex,DEX编辑器++
打开以后长按com,导入smali.zip,这个就是终端页面

打开com/winlator/MainActivity的onNavigationItemSelected方法

结尾类似下面,可能不一样
.sparse-switch
0x7f0901a3 -> :sswitch_5a
0x7f0901a7 -> :sswitch_43
0x7f0901b3 -> :sswitch_38
0x7f0901c0 -> :sswitch_2f
0x7f0901c1 -> :sswitch_19
.end sparse-switch

根据自己的menu_item_termux id值添加,sswitch_后面数不要和
上面的重复,比如sswitch_10

.sparse-switch
0x7f0901a3 -> :sswitch_5a
0x7f0901a7 -> :sswitch_43
0x7f0901b3 -> :sswitch_38
0x7f0901c0 -> :sswitch_2f
0x7f0901c1 -> :sswitch_19
0x7f090294 -> :sswitch_10
.end sparse-switch

往上翻一点找到这段代码
goto :goto_5d

.line 193
:sswitch_38
new-instance v1, Lcom/winlator/InputControlsFragment;

iget v3, p0, Lcom/winlator/MainActivity;->selectedProfileId:I

invoke-direct {v1, v3}, Lcom/winlator/InputControlsFragment;->(I)V

invoke-virtual {p0, v1}, Lcom/winlator/MainActivity;->showFragment(Landroidx/fragment/app/Fragment;)V

在这段代码前面添加下面代码,注意goto :goto_这后面的数学
注意sswitch_的数字
goto :goto_38

:sswitch_10
new-instance v1, Landroid/content/Intent;

const-class v3, Lcom/winlator/TerminalActivity;

invoke-direct {v1, p0, v3}, Landroid/content/Intent;->(Landroid/content/Context;Ljava/lang/Class;)V

invoke-virtual {p0, v1}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V

本文地址:http://52emu.cn/wp/334.html
版权声明:本文为原创文章,版权归 hostei 所有,欢迎分享本文,转载请保留出处!
PREVIOUS:已经是最后一篇了
NEXT:已经是最新一篇了
 相关文章  关键词:
打开支付宝首页搜索“564050719” 立即领红包

发表评论


表情