728x90
반응형

Android 121

<정리> Permission

Permission은 특정 시스템 리소스나 제한된 데이터와 작업에 대한 접근과 수정을 허용하는 것 Permission Workflow Permission 유형1. Install-time permissions(설치 시간 권한)앱이 제한된 데이터에 제한적으로 접근하거나, 시스템 또는 다른 앱에 최소한의 영향을 미치는 제한된 작업을 수행할 수 있도록 허용앱 스토어에서 사용자가 앱의 상세 페이지를 볼 때 설치 시간 권한 통지를 사용자에게 제시 → 사용자가 앱 설치할 때 시스템이 자동으로 권한 부여1) Normal permissions(일반 권한)앱이 제한된 데이터에 제한적으로 접근하거나, 시스템 또는 다른 앱에 최소한의 영향을 미치는 권한시스템은 보호수준을 normal로 할당android.permission.I..

Android/StoreInfo 2024.09.22

<정리> Data and file storage

안드로이드는 다른 플랫폼의 디스크 기반 파일 시스템과 유사한 파일 시스템 사용앱은 기본적으로 내부 저장소에 저장되지만 APK 사이즈가 너무 큰 경우에는 매니페스트 파일에서 외부 저장소에 설치하도록 설정 가능 데이터 저장 방법1. App-specific storage(앱 전용 저장소)다른 앱은 접근할 수 없는 해당 앱 전용 저장소App-specific files 저장내부 저장소 경로 : data/data/패키지명 외부 저장소 경로 : /storage/emulated/0/Android/data/패키지명내부/외부 저장소 접근 : Context 사용2. Shared storage(공유 저장소) 다른 앱과 공유하려는 파일(동영상, 문서 등) 저장Shareable media content 저장3. Preferenc..

Android/StoreInfo 2024.09.21

<정리> WorkManager를 이용한 주기적인 UI 업데이트2

생각보다 빠르게 어제의 마지막 고민이 해결되어서 이렇게 글을 남긴다.물론 완벽한 방법은 아닌 것 같지만 이렇게도 할 수 있다는 걸 남겨놓는게 좋을 거 같다. 1. 가장 처음 방식그냥 뷰모델에서 코루틴을 이용해 데이터를 가져와 조건을 체크하고 그 결과를 라이브데이터에 넘겨줌그냥 함수이기 때문에 호출할 때 딱 한번 실행됨더 실행되게 하고 싶다면 원하는 위치마다 호출 코드를 넣어줘야함fun updateNotificationSign() { if (savedPrefRepository.getFlag().not()) { savedPrefRepository.setFlag(true) viewModelScope.launch(Dispatchers.IO) { val dateP..

Android/Kotlin 2024.04.26

<정리> WorkManager를 이용한 주기적인 UI 업데이트

내배캠 최종 팀플 때는 성공하지 못 했지만 계속 붙잡고 있던 WorkManager가 드디어 뚫렸다...!어디서 쓰는 것이었냐면 저장된 공공서비스의 예약 관련 날짜에 대해 체크를 해서 메인 페이지의 알림 페이지 이동 버튼 UI를 업데이트하는 데 사용하는 것이었다.팀플 당시에는 이걸 할 수 없었기 때문에 앱 실행시 한번 로직을 돌려 체크를 하는 방식으로 마무리를 지었었다.껐다가 다시 키지 않는 한 해당 로직은 다시 실행되지 않았기 때문에 1분 뒤에는 조건에 맞아 UI가 업데이트되어야함에도 불구하고 1분 전에 실행되면 UI가 업데이트 되지 않는다. 해결할 수 있는 방법이 WorkManager인 것을 알고 있지만 그 때는 시간에 쫓겨 할 수 없었다.그래도 이번에 시간을 들여 WorkManager를 알아가고 적용..

Android/Kotlin 2024.04.25

24.03.29

● 오늘 한 것 [최종 팀 프로젝트 25일차] - 최종 프로젝트 발표 https://www.notion.so/5-e2be3ec1596c481d80a0d1ed82d2a9b9 ● 오늘 알게 된 것 [최종 팀 프로젝트 25일차] - 이렇게 발표를 온라인으로 할 때도 떨리면 오프라인으로 할 때는 더 심할테니 연습을 할 수 있는 기회를 좀 봐야겠다. - 보통 물어보는 질문들이 비슷하더라 MVVM 패턴 사용이유나 장점, DI 장점과 현재 구조, 라이브데이터로 얻은 장점 - IoT 분야가 CS 공부만 더 하면 괜찮게 파고들 수 있을 듯 하다. ● 오늘 총평 최종프로젝트가 발표로 마무리가 돼서 참 마음이 좋다. 물론 쉽지 않은 기간이었지만 이렇게까지 올 수 있어서 좋았다. 이후 배포와 유저테스트를 하며 좀더 경험을 쌓..

TIL 2024.03.29

24.03.28

● 오늘 한 것 [최종 팀 프로젝트 24일차] - 에러 잡기 & 발표 준비 마무리 https://www.notion.so/5-e2be3ec1596c481d80a0d1ed82d2a9b9 ● 오늘 알게 된 것 [최종 팀 프로젝트 24일차] - 마지막에 가까울수록 아쉬운 점이 보이고 에러와 버그가 속출한다. - 네트워크를 잘 처리한다는 것이 정말 어려운 것이다. 네트워크가 없어도 잘 돌아가는 앱은 신기하다. - 서버 캐싱이라는 말을 쓰고 그냥 서버 단에서 데이터를 가져오는 걸 했었네 역할은 그런 역할이긴 한데... 눈에 불키고 구현했는데 잘 돌아가더라... ● 오늘 총평 최종 발표 전날 어느새 5개월이 다 됐나 싶다... 진짜 걱정 많이 하면서 시작한 과정이었는데 마지막에는 팀장에 발표까지 하고 있네 지금까지..

TIL 2024.03.28

24.03.27

● 오늘 한 것 [최종 팀 프로젝트 23일차] - 발표 대본 준비 & 버그와 피드백 수정 https://www.notion.so/5-e2be3ec1596c481d80a0d1ed82d2a9b9 [기술면접 예상 질문 정리] - 객체 선언(Object Declaration)과 싱글톤 패턴(Singleton Pattern) ● 오늘 알게 된 것 [최종 팀 프로젝트 23일차] - 에러가 왜 이리 막바지에 터지는지 모르겠다. - 유저 피드백으로 정말 못 봤던 부분들을 알게 되더라 (후기 빈칸일 때도 작성되는 것) [기술면접 예상 질문 정리] - 객체 선언이 지금까지 자주 했던 object class를 선언하는 거였다는 걸 오늘 알았다. ● 오늘 총평 너무 피곤하다... 발표 준비하기에도 힘든데 갑자기 에러와 버그들..

TIL 2024.03.27

24.03.26

● 오늘 한 것 [최종 팀 프로젝트 22일차] - 발표 자료 준비 & 가로 무한 스크롤... https://www.notion.so/5-e2be3ec1596c481d80a0d1ed82d2a9b9 [기술면접 예상 질문 정리] - 접근제어자, lateinit, 비동기 프로그래밍 ● 오늘 알게 된 것 [최종 팀 프로젝트 22일차] - 이미지의 배경은 흰색이 가장 깔끔하다. - 챗gpt는 일단 로직을 짜고 좀 더 최적화된 코드를 떠올리지 못할 때 자세한 설명과 함께 쓰는 게 좋은 거 같다. - 조건문으로 null 체크하는 것보다는 let이 좀 더 좋은 듯...? - 가로 무한 스크롤 정말 쉽지 않았고 왜 되는지 정확하게 알지 못하겠다... 처음부터 가로 무한 스크롤 기능을 건드리려고 했던 것 아니었다. 추천 페..

TIL 2024.03.26
반응형