修改系统虚拟按键,首先要修改systemUI、navigation相关代码,在alps\vendor\mediatek\proprietary\packages\apps\SystemUI\src\com\android\systemui\statusbar\phone\StatusBar.java的start()里面添加:
if(SystemProperties.getBoolean("ro.nav_show_and_hide", false)){
mContext.getContentResolver().registerContentObserver(
Settings.System.getUriFor("navigation_bar_hide"),
true,
mBarHideContentObserver,
UserHandle.USER_ALL);
}
还要添加相关的ContentObserver方法:
private final ContentObserver mBarHideContentObserver = new ContentObserver(mHandler) {
@Override
public void onChange(boolean selfChange) {
int value = Settings.System.getInt(mContext.getContentResolver(), "navigation_bar_hide", 0);
if(value == 0){
if(mNavigationBarView == null){
createNavigationBar();
}
} else {
if(mNavigationBarView != null)