如果没有physical按键怎么办,有什么方式可以测试吗?当然有,请尝试:
1)adb shell input keyevent xx(键值),效果就如同按下物理按键一样
2)参考NavBar中KeyButtonView,NavBar中的虚拟按键都是采用的这种方式
如果你需要做双击 home key 的检测
你可以参考如下 sample code 自行实现
请修改 phoneWindowManager.Java 的 interceptKeyBeforeQueueing 方法
找到参考位置后, 加入注释所述代码:
//以下是原有代码, 即参考行
if (down && (policyFlags & WindowManagerPolicy.FLAG_VIRTUAL) != 0
&& event.getRepeatCount() == 0) {
performHapticFeedbackLw(null, HapticFeedbackConstants.VIRTUAL_KEY, false);
}
//参考行到此结束
int result = 0; //原为 int result, 请加入初始值.
// mtk sample code for double home click detection BEGIN.
//请在类中补充 boolean homeDownDoubleClick = false; 的定义
//请在类中补充 long lastHomeDownTime=0; 的定义
//请在类中补充 long lastHomeUpTime=0; 的定义
//检测原理: 检测上一次按下的 home key 与本次按下的 home key 时间间隔是否 < 500ms
//if yes, 则认为是双击 home key
if(keyCode == KeyEvent.KEYCODE_HOME){
if(down){
if(((event.getEventTime() - lastHomeDownTime) < 500)){
homeDownDoubleClick = true;
}else{
homeDownDoubleClick = false;
}
lastHomeDownTime = event.getEventTime();
}else{
// then home up comes
Log.d(TAG,"homeDownDoubleClick="+homeDownDoubleClick+",lastHomeDownTime="+lastHomeDownTime+",lastHomeUpTime="+lastHomeUpTime+",this home up="+event.getEventTime());
if(homeDownDoubleClick && ((event.getEventTime() - lastHomeUpTime) < 500)){
Log.d(TAG,"double click on home detected");
try {
IStatusBarService statusbar = getStatusBarService();
if (statusbar != null) {
statusbar.preloadRecentApps();
statusbar.toggleRecentApps();
}
} catch (RemoteException e) {
Slog.e(TAG, "RemoteException when preloading recent apps", e);
mStatusBarService = null;
}
result |= ACTION_WAKE_UP;
return result;
}
lastHomeUpTime = event.getEventTime();
}
}
base/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
private void performKeyAction(int behavior) {
switch (behavior) {
case KEY_ACTION_NOTHING:
break;
case KEY_ACTION_MENU:
triggerVirtualKeypress(KeyEvent.KEYCODE_MENU);
break;
case KEY_ACTION_APP_SWITCH:
toggleRecentApps();
break;
case KEY_ACTION_SEARCH:
launchAssistAction();
break;
case KEY_ACTION_VOICE_SEARCH:
launchAssistLongPressAction();
break;
case KEY_ACTION_IN_APP_SEARCH:
triggerVirtualKeypress(KeyEvent.KEYCODE_SEARCH);
break;
case KEY_ACTION_LAUNCH_CAMERA:
launchCameraAction();
break;
case KEY_ACTION_SLEEP:
mPowerManager.goToSleep(SystemClock.uptimeMillis());
break;
default:
break;
}
}
3005
5260
MA_UNLOCK = "ma.fprint.match.UNLOCK"
else if(MA_UNLOCK.equals(intent.getAction())){
Log.i(TAG,"recive broadcast");
keyguardDone(true, true);
mHandler.postDelayed(new Runnable() {
@Override
public void run() {
mPM.wakeUp(SystemClock.uptimeMillis());
}
},0);
}
I/WindowManager( 3883): PhoneWindowManager started!
I/WindowManager( 3883): PhoneWindowManager started! mDoubleTapOnHomeBehavior7
I/WindowManager( 3883): PhoneWindowManager end!
I/PowerManagerService( 3883): Waking up from sleep (uid 1000)...
V/KeyguardServiceDelegate( 3883): onScreenTurnedOn(showListener = com.android.internal.policy.impl.PhoneWindowManager$2@1f9ca05e)
D/DisplayPowerController( 3883): state=2,mScreenOffBecauseOfProximity=false,mProximity-1
I/DisplayPowerController( 3883): Blocking screen on until initial contents have been drawn.
./java/android/provider/Settings.java: * (Default can be configured via config_doubleTapOnHomeBehavior)
./res/res/values/symbols.xml: <java-symbol type="integer" name="config_doubleTapOnHomeBehavior" />
./res/res/values/config.xml: <integer name="config_doubleTapOnHomeBehavior">0</integer>
Start proc 18047:com.silead.fp/1000 for service com.silead.fp/.lockscreen.FpService
/Settings/res/xml/dashboard_categories.xml
interceptKeyBeforeQueueing
} else if (!interactive && shouldDispatchInputWhenNonInteractive()) {
// If we're currently dozing with the screen on and the keyguard showing, pass the key
// to the application but preserve its wake key status to make sure we still move
// from dozing to fully interactive if we would normally go from off to fully
// interactive, unless the user has explicitly disabled this wake key.
result = ACTION_PASS_TO_USER;
isWakeKey = isWakeKey && isWakeKeyEnabled(keyCode);
Log.i(TAG,"PhoneWindowManager end! 5309 isWakeKey" +isWakeKey); true
if (isWakeKey) {
Log.i(TAG,"PhoneWindowManager end! 5608 isWakeKey" +isWakeKey);
wakeUp(event.getEventTime(), mAllowTheaterModeWakeFromKey);
}
wakeUp
private boolean wakeUp(long wakeTime, boolean wakeInTheaterMode) {
if (!wakeInTheaterMode && isTheaterModeEnabled()) {
Log.i(TAG,"PhoneWindowManager end! 5926 wakingUp" );
return false;
}
Log.i(TAG,"PhoneWindowManager end! 5920 wakingUp" );
mPowerManager.wakeUp(wakeTime);
return true;
}
5283
boolean isWakeKey = (policyFlags & WindowManagerPolicy.FLAG_WAKE) != 0
|| event.isWakeKey();
if (mHomeDoubleTapPending){
mHomeConsumed
if(keyCode == KeyEvent.KEYCODE_HOME){
if(down){
// this is home down
if(((event.getEventTime() - lastHomeDownTime) < 500)){
homeDownDoubleClick = true;
}else{
homeDownDoubleClick = false;
}
lastHomeDownTime = event.getEventTime();
}else{
// then home up comes
Log.d(TAG,"homeDownDoubleClick="+homeDownDoubleClick+",lastHomeDownTime="+lastHomeDownTime+",lastHomeUpTime="+lastHomeUpTime+",this home up="+event.getEventTime());
if(homeDownDoubleClick && ((event.getEventTime() - lastHomeUpTime) < 500)){
Log.d(TAG,"double click on home detected");
isWakeKey = false;
}
lastHomeUpTime = event.getEventTime();
}
}
./frameworks/base/core/java/android/view/KeyEvent.java
optimization
./packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBouncer.java: // addshowing error dialog start by sileadinc start
./packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBouncer.java: // add showing error dialog by sileadinc end
./packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java: //add showing error dialog by sileadinc start
./packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java: //add showing error dialog by sileadinc end
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java://add by sileadinc start
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java://add by sileadinc end
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java: //add showing error dialog by sileadinc start
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java: //add showing error dialog by sileadinc end
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java: // add by sileadinc start
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java: ComponentName component = new ComponentName("com.silead.fp", "com.silead.fp.lockscreen.FpService");
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java: // add by sileadinc end
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java~://add by sileadinc start
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java~://add by sileadinc end
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java~: //add showing error dialog by sileadinc start
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java~: //add showing error dialog by sileadinc end
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java~: // add by sileadinc start
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java~: ComponentName component = new ComponentName("com.silead.fp", "com.silead.fp.lockscreen.FpService");
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java~: // add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardSecurityContainer.java://add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardSecurityContainer.java://add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardSecurityContainer.java: //add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardSecurityContainer.java: //add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardViewBase.java: //add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardViewBase.java: // add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardFingerPrintCallback.java://add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardFingerPrintCallback.java://add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: public final static String FINGER_PRINT_UNMATCH_ACTION = "com.silead.fp.lockscreen.action.UNMATCH";
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: // add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: // add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc end
./services/java/com/android/server/SystemServer.java: //add by sileadinc start
./services/java/com/android/server/SystemServer.java: //add by sileadinc end
./services/java/com/android/server/SystemServer.java: //add by sileadinc start
./services/java/com/android/server/SystemServer.java: intent.setComponent(new ComponentName("com.silead.fp",
./services/java/com/android/server/SystemServer.java: "com.silead.fp.lockscreen.FpService"));
./services/java/com/android/server/SystemServer.java: //add by sileadinc end
./services/core/java/com/android/server/power/Notifier.java: // add by sileadinc start:
./services/core/java/com/android/server/power/Notifier.java: String action = "com.silead.fp.lockscreen.fpservice.ACTION";
./services/core/java/com/android/server/power/Notifier.java: //intent.setPackage("com.silead.fp.lockscreen");
./services/core/java/com/android/server/power/Notifier.java: intent.setComponent(new ComponentName("com.silead.fp", "com.silead.fp.lockscreen.FpService"));
./services/core/java/com/android/server/power/Notifier.java: // add by sileadinc end
./policy/src/com/android/internal/policy/impl/PhoneWindowManager.java: && isForeground(mContext, "com.silead.fp.setting.EnrollActivity"))) {
./policy/src/com/android/internal/policy/impl/PhoneWindowManager.java: + " fp-isForeground:" + isForeground(mContext, "com.silead.fp.setting.EnrollActivity"));
./policy/src/com/android/internal/policy/impl/PhoneWindowManager.java~: && isForeground(mContext, "com.silead.fp.setting.EnrollActivity"))) {
./policy/src/com/android/internal/policy/impl/PhoneWindowManager.java~: + " fp-isForeground:" + isForeground(mContext, "com.silead.fp.setting.EnrollActivity"));
grep: ./policy/src/com/android/internal/policy/impl/keyguard: Is a directory
./policy/src/com/android/internal/policy/impl/keyguard/KeyguardServiceWrapper.java: //modified by silead begin
./policy/src/com/android/internal/policy/impl/keyguard/KeyguardServiceWrapper.java: //modified by silead end
grep: ./location: Is a directory
1)adb shell input keyevent xx(键值),效果就如同按下物理按键一样
2)参考NavBar中KeyButtonView,NavBar中的虚拟按键都是采用的这种方式
如果你需要做双击 home key 的检测
你可以参考如下 sample code 自行实现
请修改 phoneWindowManager.Java 的 interceptKeyBeforeQueueing 方法
找到参考位置后, 加入注释所述代码:
//以下是原有代码, 即参考行
if (down && (policyFlags & WindowManagerPolicy.FLAG_VIRTUAL) != 0
&& event.getRepeatCount() == 0) {
performHapticFeedbackLw(null, HapticFeedbackConstants.VIRTUAL_KEY, false);
}
//参考行到此结束
int result = 0; //原为 int result, 请加入初始值.
// mtk sample code for double home click detection BEGIN.
//请在类中补充 boolean homeDownDoubleClick = false; 的定义
//请在类中补充 long lastHomeDownTime=0; 的定义
//请在类中补充 long lastHomeUpTime=0; 的定义
//检测原理: 检测上一次按下的 home key 与本次按下的 home key 时间间隔是否 < 500ms
//if yes, 则认为是双击 home key
if(keyCode == KeyEvent.KEYCODE_HOME){
if(down){
if(((event.getEventTime() - lastHomeDownTime) < 500)){
homeDownDoubleClick = true;
}else{
homeDownDoubleClick = false;
}
lastHomeDownTime = event.getEventTime();
}else{
// then home up comes
Log.d(TAG,"homeDownDoubleClick="+homeDownDoubleClick+",lastHomeDownTime="+lastHomeDownTime+",lastHomeUpTime="+lastHomeUpTime+",this home up="+event.getEventTime());
if(homeDownDoubleClick && ((event.getEventTime() - lastHomeUpTime) < 500)){
Log.d(TAG,"double click on home detected");
try {
IStatusBarService statusbar = getStatusBarService();
if (statusbar != null) {
statusbar.preloadRecentApps();
statusbar.toggleRecentApps();
}
} catch (RemoteException e) {
Slog.e(TAG, "RemoteException when preloading recent apps", e);
mStatusBarService = null;
}
result |= ACTION_WAKE_UP;
return result;
}
lastHomeUpTime = event.getEventTime();
}
}
base/policy/src/com/android/internal/policy/impl/PhoneWindowManager.java
private void performKeyAction(int behavior) {
switch (behavior) {
case KEY_ACTION_NOTHING:
break;
case KEY_ACTION_MENU:
triggerVirtualKeypress(KeyEvent.KEYCODE_MENU);
break;
case KEY_ACTION_APP_SWITCH:
toggleRecentApps();
break;
case KEY_ACTION_SEARCH:
launchAssistAction();
break;
case KEY_ACTION_VOICE_SEARCH:
launchAssistLongPressAction();
break;
case KEY_ACTION_IN_APP_SEARCH:
triggerVirtualKeypress(KeyEvent.KEYCODE_SEARCH);
break;
case KEY_ACTION_LAUNCH_CAMERA:
launchCameraAction();
break;
case KEY_ACTION_SLEEP:
mPowerManager.goToSleep(SystemClock.uptimeMillis());
break;
default:
break;
}
}
3005
5260
MA_UNLOCK = "ma.fprint.match.UNLOCK"
else if(MA_UNLOCK.equals(intent.getAction())){
Log.i(TAG,"recive broadcast");
keyguardDone(true, true);
mHandler.postDelayed(new Runnable() {
@Override
public void run() {
mPM.wakeUp(SystemClock.uptimeMillis());
}
},0);
}
I/WindowManager( 3883): PhoneWindowManager started!
I/WindowManager( 3883): PhoneWindowManager started! mDoubleTapOnHomeBehavior7
I/WindowManager( 3883): PhoneWindowManager end!
I/PowerManagerService( 3883): Waking up from sleep (uid 1000)...
V/KeyguardServiceDelegate( 3883): onScreenTurnedOn(showListener = com.android.internal.policy.impl.PhoneWindowManager$2@1f9ca05e)
D/DisplayPowerController( 3883): state=2,mScreenOffBecauseOfProximity=false,mProximity-1
I/DisplayPowerController( 3883): Blocking screen on until initial contents have been drawn.
./java/android/provider/Settings.java: * (Default can be configured via config_doubleTapOnHomeBehavior)
./res/res/values/symbols.xml: <java-symbol type="integer" name="config_doubleTapOnHomeBehavior" />
./res/res/values/config.xml: <integer name="config_doubleTapOnHomeBehavior">0</integer>
Start proc 18047:com.silead.fp/1000 for service com.silead.fp/.lockscreen.FpService
/Settings/res/xml/dashboard_categories.xml
interceptKeyBeforeQueueing
} else if (!interactive && shouldDispatchInputWhenNonInteractive()) {
// If we're currently dozing with the screen on and the keyguard showing, pass the key
// to the application but preserve its wake key status to make sure we still move
// from dozing to fully interactive if we would normally go from off to fully
// interactive, unless the user has explicitly disabled this wake key.
result = ACTION_PASS_TO_USER;
isWakeKey = isWakeKey && isWakeKeyEnabled(keyCode);
Log.i(TAG,"PhoneWindowManager end! 5309 isWakeKey" +isWakeKey); true
if (isWakeKey) {
Log.i(TAG,"PhoneWindowManager end! 5608 isWakeKey" +isWakeKey);
wakeUp(event.getEventTime(), mAllowTheaterModeWakeFromKey);
}
wakeUp
private boolean wakeUp(long wakeTime, boolean wakeInTheaterMode) {
if (!wakeInTheaterMode && isTheaterModeEnabled()) {
Log.i(TAG,"PhoneWindowManager end! 5926 wakingUp" );
return false;
}
Log.i(TAG,"PhoneWindowManager end! 5920 wakingUp" );
mPowerManager.wakeUp(wakeTime);
return true;
}
5283
boolean isWakeKey = (policyFlags & WindowManagerPolicy.FLAG_WAKE) != 0
|| event.isWakeKey();
if (mHomeDoubleTapPending){
mHomeConsumed
if(keyCode == KeyEvent.KEYCODE_HOME){
if(down){
// this is home down
if(((event.getEventTime() - lastHomeDownTime) < 500)){
homeDownDoubleClick = true;
}else{
homeDownDoubleClick = false;
}
lastHomeDownTime = event.getEventTime();
}else{
// then home up comes
Log.d(TAG,"homeDownDoubleClick="+homeDownDoubleClick+",lastHomeDownTime="+lastHomeDownTime+",lastHomeUpTime="+lastHomeUpTime+",this home up="+event.getEventTime());
if(homeDownDoubleClick && ((event.getEventTime() - lastHomeUpTime) < 500)){
Log.d(TAG,"double click on home detected");
isWakeKey = false;
}
lastHomeUpTime = event.getEventTime();
}
}
./frameworks/base/core/java/android/view/KeyEvent.java
optimization
./packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBouncer.java: // addshowing error dialog start by sileadinc start
./packages/SystemUI/src/com/android/systemui/statusbar/phone/KeyguardBouncer.java: // add showing error dialog by sileadinc end
./packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java: //add showing error dialog by sileadinc start
./packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBarKeyguardViewManager.java: //add showing error dialog by sileadinc end
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java://add by sileadinc start
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java://add by sileadinc end
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java: //add showing error dialog by sileadinc start
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java: //add showing error dialog by sileadinc end
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java: // add by sileadinc start
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java: ComponentName component = new ComponentName("com.silead.fp", "com.silead.fp.lockscreen.FpService");
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java: // add by sileadinc end
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java~://add by sileadinc start
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java~://add by sileadinc end
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java~: //add showing error dialog by sileadinc start
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java~: //add showing error dialog by sileadinc end
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java~: // add by sileadinc start
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java~: ComponentName component = new ComponentName("com.silead.fp", "com.silead.fp.lockscreen.FpService");
./packages/SystemUI/src/com/android/systemui/keyguard/KeyguardViewMediator.java~: // add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardSecurityContainer.java://add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardSecurityContainer.java://add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardSecurityContainer.java: //add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardSecurityContainer.java: //add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardViewBase.java: //add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardViewBase.java: // add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardFingerPrintCallback.java://add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardFingerPrintCallback.java://add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: public final static String FINGER_PRINT_UNMATCH_ACTION = "com.silead.fp.lockscreen.action.UNMATCH";
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: // add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: // add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc end
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc start
./packages/Keyguard/src/com/android/keyguard/KeyguardUpdateMonitor.java: //add by sileadinc end
./services/java/com/android/server/SystemServer.java: //add by sileadinc start
./services/java/com/android/server/SystemServer.java: //add by sileadinc end
./services/java/com/android/server/SystemServer.java: //add by sileadinc start
./services/java/com/android/server/SystemServer.java: intent.setComponent(new ComponentName("com.silead.fp",
./services/java/com/android/server/SystemServer.java: "com.silead.fp.lockscreen.FpService"));
./services/java/com/android/server/SystemServer.java: //add by sileadinc end
./services/core/java/com/android/server/power/Notifier.java: // add by sileadinc start:
./services/core/java/com/android/server/power/Notifier.java: String action = "com.silead.fp.lockscreen.fpservice.ACTION";
./services/core/java/com/android/server/power/Notifier.java: //intent.setPackage("com.silead.fp.lockscreen");
./services/core/java/com/android/server/power/Notifier.java: intent.setComponent(new ComponentName("com.silead.fp", "com.silead.fp.lockscreen.FpService"));
./services/core/java/com/android/server/power/Notifier.java: // add by sileadinc end
./policy/src/com/android/internal/policy/impl/PhoneWindowManager.java: && isForeground(mContext, "com.silead.fp.setting.EnrollActivity"))) {
./policy/src/com/android/internal/policy/impl/PhoneWindowManager.java: + " fp-isForeground:" + isForeground(mContext, "com.silead.fp.setting.EnrollActivity"));
./policy/src/com/android/internal/policy/impl/PhoneWindowManager.java~: && isForeground(mContext, "com.silead.fp.setting.EnrollActivity"))) {
./policy/src/com/android/internal/policy/impl/PhoneWindowManager.java~: + " fp-isForeground:" + isForeground(mContext, "com.silead.fp.setting.EnrollActivity"));
grep: ./policy/src/com/android/internal/policy/impl/keyguard: Is a directory
./policy/src/com/android/internal/policy/impl/keyguard/KeyguardServiceWrapper.java: //modified by silead begin
./policy/src/com/android/internal/policy/impl/keyguard/KeyguardServiceWrapper.java: //modified by silead end
grep: ./location: Is a directory