现在的位置: 首页 > 综合 > 正文

android 在关机界面添加重启功能

2013年10月18日 ⁄ 综合 ⁄ 共 1640字 ⁄ 字号 评论关闭

1. 在alps\frameworks\base\core\res\res\values\strings.xml 
 中添加标签:  
<!--sergeycaoadd start--> 
 <!-- label for item that power reboot in phone options dialog --> 
 <string name="zzzzz_global_action_power_reboot">Reboot</string> 
 <!--sergeycaoadd end--> 
 当然这只是英语语系的,贵司需要添加其它语系的标示,把"Reboot" 替换成其它语言。 
2. 在alps\frameworks\base\core\res\res\drawable-hdpi 中添加图标:
zzzzz_ic_lock_power_reboot.png
3. 打开
\alps\frameworks\policies\base\phone\com\android\internal\policy\impl\GlobalActions.java 
 大概在这个文件的261行有这样的代码:  
mItems = Lists.newArrayList( 
 // silent mode 
 mSilentModeToggle, 
 // next: airplane mode 
 mAirplaneModeOn, 
 // last: power off 
 在这里,我们添加power reboot 的新的item. 
 具体这个mItems 更新为如下: 
 mItems = Lists.newArrayList( 
 // silent mode 
 mSilentModeToggle, 
 // next: airplane mode 
 mAirplaneModeOn, 
 // last: power off 
 new SinglePressAction( 
 com.android.internal.R.drawable.ic_lock_power_off, 
 R.string.global_action_power_off) {
public void onPress() { 
 // shutdown by making sure radio and power are handled
accordingly. 
 ShutdownThread.shutdown(mContext, true); 
 }
public boolean showDuringKeyguard() { 
 return true; 
 }
public boolean showBeforeProvisioning() { 
 return true; 
 } 
 }//sergeycao add start 
 , 
 new SinglePressAction( 
 com.android.internal.R.drawable.zzzzz_ic_lock_power_reboot, 
 R.string.zzzzz_global_action_power_reboot) { 
 public void onPress() { 
 // reboot by making sure radio and power are handled
accordingly. 
 ShutdownThread.reboot(mContext, null, true); 
 } 
  
public boolean showDuringKeyguard() { 
 return true; 
 } 
  
public boolean showBeforeProvisioning() { 
 return true; 
 }  
 }  
 //sergeycaoadd end. 
 );  
经过这样的添加/修改后,这项feature 即可运行。 
注意如果测试的话,因为有修改framework 中的文件,您最好new 一下整个工程。
另外您需要修改一下ShutdownThread.java 中的那个dialog 显示描述,不然将依旧看到“关机”的信息。

抱歉!评论已关闭.