마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

앱 실행에 따라서 App테마배경 변경 할 수 있나요?

0 추천
제가 만든 App을 구동할 때 안드로이드OS에서 직접 아이콘을 클릭하여 실행 하는 경우와

다른 App에서 Activity를 실행하여 구동하는 두가지 경우를 사용하고 있습니다.

 

처음에는 AppTheme의 windowBackground를 투명으로 설정 하였습니다.

그런데 이런 경우 OS에서 실행 하면 App이 처음 로딩 되는 시간동안 화면이 멈춘것 같이 보이는 바람에

현재는 AppTheme배경을 이미지로 변경하였습니다.

 

여기서 발생된 문제가 다른 App에서 실행 할 경우에도 이미지 배경이 뜨는 바람에 뭔가 부자연 스러워졌는데요

OS에서 실행 할때는 AppTheme의 배경을 이미지로 , 다른 App에서 실행될때는 투명으로 설정하고 싶습니다.

 

이러한 방법이 가능한가요?

 

OS에서 실행 될때와 다른 App에서 실행 될때를 어떻게 파악 할 수 있을까요?

 

저 배경 이미지는 MainApplication의 onCreate()가 호출되기 이전까지 표시됩니다.

* 런처 사용을 고려해봤으나 이부분은 저희 App에 적용하기 어려워 제외하였습니다.
익명사용자 님이 2018년 10월 11일 질문

1개의 답변

0 추천
런쳐에서 실행될 경우에는 AndroidManifest.xml 파일에  intent-filter 가 android.intent.category.LAUNCHER 인 activity가 호출됩니다.

다른 어플에서 intent로 실행할  경우에는 AndroidManifest.xml 파일에 android:exported="true"로 선언한  activity를 호출하는것도 가능하니,

두 activity의 동작을 다르게 해 주시던지,

android.intent.category.LAUNCHER 로 선언된 activity에서 android:exported="true" 로 선언된 activity를 다시 호출하면서, putExtra 로 런처에서 실행되었다는 점을 알려서 android:exported="true" 로 선언된 activity에서 예외 처리를 해주시면 될 듯 하네요.
익명사용자 님이 2018년 10월 12일 답변
...