设为首页收藏本站

木蚂蚁手机乐园首页

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8748|回复: 143

[教程] 关机增强·····关键键添加重启手机和刷机模式的方法

  [复制链接]

394

主题

1346

帖子

5310

积分

论坛贵宾

Rank: 20Rank: 20Rank: 20Rank: 20

积分
5310

社区QQ达人

发表于 2012-5-12 23:00:55 | 显示全部楼层 |阅读模式
本帖最后由 柳柳 于 2012-5-13 12:26 编辑

第一步

添加字符串
游客,如果您要查看本帖隐藏内容请回复
打开values\public.xml,继续添加代码
[/quote]
[quote]1. <public type="drawable" name="reboot" id="0x010803aa" />
2. <public type="drawable" name="recovery" id="0x010803ab" />
3. <public type="drawable" name="download" id="0x010803ac" />


保存,关闭

现在framework-res.apk文件弄好了,剩下的编译就不用多说了

接下来弄另外一个文件framework.jar
目的是使关机选项有作用,能重启

反编译framework.jar(方法自己百度)

打开com\android\internal\app\ShutdownThread.smali

在第37行添加代码
[/quote]
[quote].field public static mReboot:I


然后,转到第1463行,注意,此行前一个代码应该是"invoke-static {}, Landroid/os/Power;->shutdown()V"

在此行添加代码
[/quote]
[quote]1. sget v1, Lcom/android/internal/app/ShutdownThread;->mReboot:I
2.
3. const/4 v2, 0x1
4.
5. if-eq v1, v2, :reboot
6.
7. const/4 v2, 0x2
8.
9. if-eq v1, v2, :rebootRecovery
10.
11. const/4 v2, 0x3
12.
13. if-eq v1, v2, :rebootDownload


然后在1477行
1. .line 531
2. invoke-static {}, Landroid/os/Power;->shutdown()V
3.
4. .line 532
5. return-void





继续添加代码

1. :reboot
2.
3. const-string v4, "now"
4.
5. invoke-static {v4}, Landroid/os/Power;->reboot(Ljava/lang/String;)V
6.
7. return-void
8.
9. :rebootRecovery
10.
11. const-string v4, "recovery"
12.
13. invoke-static {v4}, Landroid/os/Power;->reboot(Ljava/lang/String;)V
14.
15. return-void
16.
17. :rebootDownload
18.
19. const-string v4, "download"
20.
21. invoke-static {v4}, Landroid/os/Power;->reboot(Ljava/lang/String;)V
22.
23. return-void

保存,关闭

之后将framework.jar编译回来(方法百度)

接下来我们要在电源菜单中添加选项

反编译android.policy.jar

打开com\android\internal\policy\impl\GlobalActions.smali

第一件事就是将数组长度增加3

方法是将第431行的代码
1. const/4 v0, 0x3
2.
3. new-array v0, v0, [Lcom/android/internal/policy/impl/GlobalActions$Action;


改为

1. const/4 v0, 0x6
2.
3. new-array v0, v0, [Lcom/android/internal/policy/impl/GlobalActions$Action;


然后,在第457行,也就是在 aput-object v2, v0, v1 之后

添加代码
[/quote]
[quote]1. const/4 v1, 0x3
2.
3. new-instance v2, Lcom/android/internal/policy/impl/GlobalActions$7;
4.
5. const v3, 0x10803aa # reboot icon resource id
6.
7. const v4, 0x10403c5 # reboot string resource id
8.
9. invoke-direct {v2, p0, v3, v4}, Lcom/android/internal/policy/impl/GlobalActions$7;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V
10.
11. aput-object v2, v0, v1
12.
13. const/4 v1, 0x4
14.
15. new-instance v2, Lcom/android/internal/policy/impl/GlobalActions$8;
16.
17. const v3, 0x10803ab # recovery icon resource id
18.
19. const v4, 0x10403c3 # recovery string resource id
20.
21. invoke-direct {v2, p0, v3, v4}, Lcom/android/internal/policy/impl/GlobalActions$8;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V
22.
23. aput-object v2, v0, v1
24.
25. const/4 v1, 0x5
26.
27. new-instance v2, Lcom/android/internal/policy/impl/GlobalActions$9;
28.
29. const v3, 0x10803ac # download icon resource id
30.
31. const v4, 0x10403c4 # download string resource id
32.
33. invoke-direct {v2, p0, v3, v4}, Lcom/android/internal/policy/impl/GlobalActions$9;-><init>(Lcom/android/internal/policy/impl/GlobalActions;II)V
34.
35. aput-object v2, v0, v1

确保id与刚刚在framework-res.apk中添加的id名称一致

保存,关闭

接下来确保你添加的重启选项可用

复制GlobalActions$3.smali 并且重命名为GlobalActions$7.smali
打开GlobalActions$7.smali 替换所有GlobalActions$3.smali 的实例

然后转到52行,52行前面的代码应该是
"invoke-static {v0, v1}, Lcom/android/internal/app/ShutdownThread;->shutdown(Landroid/content/Context;Z)V"

1. const/4 v2, 0x1
2.
3. sput v2, Lcom/android/internal/app/ShutdownThread;->mReboot:I


接下来
复制GlobalActions$3.smali 并命名为GlobalActions$9.smali
打开GlobalActions$9.smali 替换所有GlobalActions$3.smali 实例
同样转到第52行,52行前面应该是"invoke-static {v0, v1}, Lcom/android/internal/app/ShutdownThread;->shutdown(Landroid/content/Context;Z)V

1. const/4 v2, 0x3
2.
3. sput v2, Lcom/android/internal/app/ShutdownThread;->mReboot:I


保存,关闭

将android.policy.jar编译回来



评分

3

查看全部评分

回复

使用道具 举报

0

主题

58

帖子

122

积分

木蚂蚁小学二年级

Rank: 2Rank: 2

积分
122
发表于 2012-5-12 23:02:44 | 显示全部楼层
沙发!!!!!
回复 支持 反对

使用道具 举报

2

主题

483

帖子

1100

积分

木蚂蚁小学五年级

Rank: 5Rank: 5Rank: 5

积分
1100
发表于 2012-5-13 00:30:22 | 显示全部楼层
学习中,谢谢分享!
回复 支持 反对

使用道具 举报

9

主题

15

帖子

223

积分

木蚂蚁小学三年级

Rank: 3

积分
223
发表于 2012-5-13 00:59:10 | 显示全部楼层
看帖不回者木有小jj
回复 支持 反对

使用道具 举报

3

主题

124

帖子

321

积分

木蚂蚁小学三年级

Rank: 3

积分
321

社区QQ达人

发表于 2012-5-14 12:48:10 | 显示全部楼层
dfsjesoifjldsjfgdjg
回复 支持 反对

使用道具 举报

0

主题

144

帖子

370

积分

木蚂蚁小学三年级

Rank: 3

积分
370
发表于 2012-5-14 14:15:17 | 显示全部楼层
学习看看
回复 支持 反对

使用道具 举报

0

主题

55

帖子

110

积分

木蚂蚁小学二年级

Rank: 2Rank: 2

积分
110
发表于 2012-5-16 11:37:21 | 显示全部楼层
钱钱钱钱钱钱钱钱钱钱钱钱钱钱钱钱钱钱
回复 支持 反对

使用道具 举报

0

主题

45

帖子

98

积分

木蚂蚁小学一年级

Rank: 1

积分
98

社区QQ达人

发表于 2012-5-16 13:42:26 | 显示全部楼层

RE: 关机增强·····关键键添加重启手机和刷机模式的方法

我要学习下
回复 支持 反对

使用道具 举报

0

主题

76

帖子

154

积分

木蚂蚁小学二年级

Rank: 2Rank: 2

积分
154

社区QQ达人

发表于 2012-5-22 21:49:25 | 显示全部楼层
看看。。。。。。。。。。。
回复 支持 反对

使用道具 举报

0

主题

48

帖子

104

积分

木蚂蚁小学二年级

Rank: 2Rank: 2

积分
104
发表于 2012-5-25 09:23:27 | 显示全部楼层
找了很久,原来在这里!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

推荐版块: PC破解软件下载  |   VR视频资源下载  |   三星Galaxy S8/S8+  |   全民突击论坛   |   安卓破解软件   |   安卓破解游戏      安卓汉化下载  
安卓android软件大全  |   安卓大型游戏  |   小米手机论坛  |   三星note3论坛  |   安卓影视下载  |   安卓破解    
安卓   安卓软件   手机拍照软件   手机音乐软件   手机表情软件   Xplay 3S论坛   安卓游戏   手机游戏   手机健康软件   手机订餐软件   手机购物软件   热门TAG
快速回复 返回顶部 返回列表