반응형 분류 전체보기95 UI 변경과 다중 창 모드 요즘 많은 사람들이 핸드폰을 사용할때 멀티로 창(멀티 윈도우)을 띄워놓는 경우가 많습니다. 이 기능은 점점 커진 휴대폰 화면에서 한 화면에 2개의 창을 볼수 있어 정말 유용한 기능입니다. 하지만 다중 창 모드가 안드로이드 7.0부터 도입되면서 많은 앱들이 의도한대로 작동하지 못하는 불상사가 발생하게 되었습니다 기존에 안드로이드 7.0이전에는 대부분 액티비티가 매우 짧은 시간 동안만 일시 중지 상태에 머물렀다가 곧바로 실행 재개 상태나 중단 상태로 바뀌었고 이 때문에 액티비티의 상태가 일시 중지가 아닌 실행 재개일때 UI를 변경해야 한다고 생각해 UI와 관련해서 진행 중인 변경의 시작과 중단을 onResume()과 onPause()에서 하는것이 일반적이었기 때문에 이렇게 만든 앱은 다중 창 모드일때 액티비.. 2021. 5. 27. UI 상태 저장을 하는 방법 안드로이드에서는 장치 회전과 같은 런타임 구성 변경 시 또는 사용자가 다른 앱으로 이동하거나 안드로이드 운영체제가 메모리를 회수할 때 앱의 프로세스가 소멸되는데 이때 저장된 모든 객체들도 같이 소멸됩니다. 때문에 해당 데이터를 보존할 방법이 필요합니다. ViewModel ViewModel로 UI 데이터를 쉽게 저장해 UI상태가 유실되는것을 막을수 있습니다 ViewModel은 특정 액티비티 화면과 연동되며, 해당 화면에 보여줄 데이터를 형식화하는 로직을 두기 좋은 장소입니다 ViewModel은 모델 객체와 연동되며 모델 데이터를 화면에 보여주는 기능을 수행합니다 ViewModel을 사용해 화면에서 필요한 모든 데이터를 한곳에서 종합하고 데이터를 형식화 할수 있습니다 SIS(Saved Instance Sta.. 2021. 5. 27. 프로세스, 스레드, 코루틴 프로세스란? 프로세스는 실행 중인 애플리케이션의 인스턴스입니다. 애플리케이션이 시작될 때 애플리케이션의 프로세스가 시작됩니다 프로세스 상태 핸들, 프로세스ID, 데이터, 네트워크 연결 등 프로세스 내부의 스레드가 프로세스를 액세스 할수 있다 애플리케이션은 여러 프로세스로 구성 가능 스레드란? 프로세스는 최소한 하나의 스레드를 포함해야 합니다 스레드가 끝나면 프로세스의 다른 스레드와 상관없이 프로세스가 종료됩니다 각 스레드는 스레드가 속한 프로세스에 포함된 리소스를 액세스하고 수정할수 있지만 스레드 로컬 스토리지라는 자체 저장소도 갖고 있습니다 스레드 안에서 명령은 한번에 하나씩 실행되고 스레드가 블록되면 블록이 끝날 때까지 같은 스레드에서 다른 명령을 실행할 수 없다 GUI애플리케이션은 응답성을 항상 유.. 2021. 5. 25. WorkManager 란? WorkManager 란? WorkManager는 Jetpack과 함께 제공되는 Android 백그라운드 작업 관리 시스템입니다. 작업 관리자를 사용하여 지연 작업을 할수 있고, 백그라운드 작업을 연기할 수 있습니다. WorkManager 특징 WorkManager는 앱이 종료되더라도 시스템이 지연된 작업을 실행하도록 보장합니다 WorkManager 이전에는 작업 스케줄러, 작업스케줄러 및 알람 매니저와 브로드캐스트 수신기를 사용하여 작업을 예약했었습니다. 하지만 이러한 방법들은 작업을 스케줄링하는 시간이 많이 소요되고 복잡했습니다. 또 많은 요구사항과 제약조건을 처리하기 위해 코드가 길어지기까지 했습니다 WorkManager는 여러가지를 지원하고 여러 이점을 가져다 줍니다 WorkManager는 작업을.. 2021. 5. 18. 이전 1 ··· 13 14 15 16 17 18 19 ··· 24 다음 반응형