Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
menu search
person
Welcome To Ask or Share your Answers For Others

Categories

I'm newbie in android development. I've created an android app which shows the current location, and I need to override the recent apps button in android and add some options, is that possible?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
1.2k views
Welcome To Ask or Share your Answers For Others

1 Answer

I faced similar problem, so, i needed to know when the user press the recent apps button (menu key button in old versions of android). after a several hours of research i didn't found an event to catch when the home button or the menu button is pressed. i found that it's take a longer time to call onStop() when the user press the home button, so i figure a trick to distinguish between these tow buttons relating on time of response and overriding two methods:

@Override

public void onUserLeaveHint() { 
    // do stuff
    super.onUserLeaveHint();
    userLeaveTime = System.currentTimeMillis() ;
    isNotPower = true;
}

@Override

public void onStop() {
    super.onStop();
    if (isNotPower) {
        defStop = System.currentTimeMillis() - userLeaveTime;
        if (defStop > 200 ) {
            // when the home button pressed
        }
        if (defStop < 200 ) {
           // when the recent apps button pressed
        }
    }
    isNotPower = false;
}
  • the isNotPower parameter that's to check that not the power button is pressed- when the power button pressed the onStop() method is called but not th onUserLeaveHint().

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
thumb_up_alt 0 like thumb_down_alt 0 dislike
Welcome to ShenZhenJia Knowledge Sharing Community for programmer and developer-Open, Learning and Share
...