투케이2K

34. (TWOK/LOGIC) [Android] App 앱 로딩 화면 접속 및 메인 화면 이동 시 NEW_TASK , LAUNCHER 새로운 태스크 적용 로직 본문

투케이2K 로직정리

34. (TWOK/LOGIC) [Android] App 앱 로딩 화면 접속 및 메인 화면 이동 시 NEW_TASK , LAUNCHER 새로운 태스크 적용 로직

투케이2K 2023. 10. 25. 16:42

[로직 정리]

정리 로직 : Android

상태 : [Android] App 앱 로딩 화면 접속 및 메인 화면 이동 시 NEW_TASK , LAUNCHER 새로운 태스크 적용 로직

 

[설 명]

 

-------------------------------------------------------------------------------

[Step] : [1] : 외부 스키마 접속 및 일반 앱 실행 접속 여부 체크 실시

  >> getIntent()!=null
  >> Uri uri = getIntent().getData();

-------------------------------------------------------------------------------

[Step] : [2] : 외부 스키마 접속 인 경우 true / 일반 앱 클릭 실행 인 경우 false 값 저장

-------------------------------------------------------------------------------

[Step] : [3] : 네트워크 활성 상태 및 루팅 탐지 등 필요 조건 검사 실행

-------------------------------------------------------------------------------

[Step] : [4] : intent 전환 체크 메소드에서 NEW_TASK , LAUNCHER 적용 여부 true , false 값 체크 및 인텐트 이동

                        // -----------------------------------------
                        // [true] 조건 : [화면 전환 수행]
                        // -----------------------------------------
                        Intent goPage = new Intent(A_Intro.this, A_Main.class);
                        goPage.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
                        goPage.setAction(Intent.ACTION_MAIN); // 런쳐 액티비티
                        goPage.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); // 새로운 태스크
                        goPage.addCategory(Intent.CATEGORY_LAUNCHER); // 런쳐 액티비티
                        startActivity(goPage);
                        // -----------------------------------------
                        // [기존 화면 종료]
                        finish();
                        overridePendingTransition(0, 0);
                        // -----------------------------------------


                        // -----------------------------------------
                        // [false] 조건 : [화면 전환 수행]
                        // -----------------------------------------
                        Intent goPage = new Intent(A_Intro.this, A_Main.class);
                        goPage.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
                        startActivity(goPage);
                        // -----------------------------------------
                        // [기존 화면 종료]
                        finish();
                        overridePendingTransition(0, 0);
                        // -----------------------------------------

-------------------------------------------------------------------------------

[추가 설명]

1. 해당 옵션 적용 시 : [일반 - fase 적용] >> [로그인 화면 기준] >> 메인 화면으로 이동 후 로그인 화면 종료 >> [메인 화면이 최상위 액티비티가 된다]


2. 해당 옵션 적용 시 : [스키마 - true 적용] >> [이미 앱을 실행 중 인 경우 라도] >> 다른 앱에서 스키마 접속으로 앱 접속 시 다시 로그인 화면을 통하게 되며, 기존에 앱 task 삭제 후 스키마로 접속한 앱 task 하나를 사용한다

-------------------------------------------------------------------------------

 

반응형
Comments