3:02: Android 핫 부팅 최적화

정의:
응용 프로그램을 시작할 때 백엔드에 이미 이 응용 프로그램의 프로세스가 있습니다. (예: 백업 키, 홈 키를 누르면 응용 프로그램은 종료되지만 이 응용 프로그램의 프로세스는 백엔드에 남아 작업 목록에 들어가 볼 수 있습니다.) 따라서 이미 프로세스가 있는 상황에서 이러한 시작은 기존 프로세스에서 응용 프로그램을 시작합니다. 이 방식을 열 시작이라고 합니다.
특징:
핫 스타트는 기존 프로세스에서 시작하기 때문에 핫 스타트는 Application 단계를 밟지 않고 MainActivity(일련의 측정, 레이아웃, 그리기 포함)로 바로 간다. 따라서 핫 스타트 과정은 MainActivity를 만들고 초기화하기만 하면 된다. Application을 만들고 초기화할 필요가 없다.
Application은 새 프로세스의 생성에서 프로세스의 제거에 이르기까지 한 응용 프로그램이 한 번만 초기화됩니다.
 
시작 페이지에서
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        if (!isTaskRoot()) {
            finish();
            return;
        }
        setContentView(R.layout.activity_splash);
    }

기본 Activity, 즉 일반 MainActivity를 찾아 클래스에 추가합니다.
사용자가 복귀 키를 누르면 데스크톱에서 종료할 때,finish에서 activity가 떨어지지 않도록 하고,moveTaskToBack (true) 를 호출해서 activity를 백엔드로 옮겨서 다음에 앱을 시작할 때 이 인터페이스로 바로 들어갈 수 있도록 합니다.
    @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN)                 
    {
            moveTaskToBack(true);
            return true;
        }
        return super.onKeyDown(keyCode, event);

    }

좋은 웹페이지 즐겨찾기