안드로이드와 앱 22

SharedPreferences

Preference 프로그램의 설정 정보(사용자의 옵션 선택 사항 이나 프로그램의 구성 정보)를 영구적으로 저장하는 용도간단한 정보들을 저장할 때 사용(예 : 알림설정 true/false)하며 보통 여러개를 저장한다. XML 텍스트 파일에 키-값 세트로 저장  SharedPreferences 클래스 Preferences의 데이터를 관리하는 클래스응용 프로그램 내(현 어플리케이션) 액티비티 간 공유. 한 액티비티에서 수정 시 다른 액티비티에서도 수정된 값 확인응용 프로그램의 고유한 정보이므로 외부에서는 읽을 수 없다.         String, Boolean, Int, Long, Float  타입의 저장 및 복원한개의 파일 : getPreferences 액티비티 클래스에 정의된 메소드이므로 액티비티 인스..

Retrofit

API Application Programming Interface 서버가 클라이언트에게 자원을 잘 활용할 수 있도록 제공하는 인터페이스 interface  ᖜ ‿ᖜ  인터페이스 interface의 사전적 의미의사소통이 가능하도록 만들어진 접점       REST API Representational State Transferᖜ ‿ᖜ  Representational State Transfer의 사전적 의미대표하는 상태 전송 HTTP URI를 통해 서버와 클라이언트가 통신하는 아키텍쳐자원을 명시하고 HTTP Method로 해당 자원에 대한 CRUD 명령을 적용 HTTP Method GET서버에게 데이터를 달라는 요청(열람)할 때 사용HEADGET과 같지만 서버가 응답할 때 Body 없이 Header만 리턴..

알림 Notification

알림 Notification이란?앱의 UI와 별도로 사용자에게 앱 관련정보를 보여주는 기능 표시형식위치별 알림 표시형식상태 표시줄 : 아이콘알림 창 : 자세한 항목.  상태 표시줄에서 아래로 스와이프하면 열어 볼 수 있으며 세부정보 확인,  제공되는 경우 추가 콘텐츠와 작업 버튼이 표시, 문자 답장처럼 바로 간단한 작업 가능(Android 7.0부터), 확장뷰로 긴텍스트, 이미지, 버튼, 프로그래스바 등 추가가능앱 아이콘 : 배지(Android 8.0부터) 잠금 화면(Android 5.0부터)알림채널에서 잠금화면 알림 설정가능(Android 8.0부터)잠긴 기기의 알림에 보안 레이어를 추가해 잠금 해제해야 하는 옵션 설정가능(Android 12부터) 페어링된 웨어러블에도 표시 앱이나 사용자가 닫을 때까지..

프래그먼트 Fragment

정의 안드로이드 애플리케이션의 UI 부분을 모듈화한 사용자 인터페이스   특징 독립불가 : 액티비티 위에서 동작하므로 액티비티와 분리되어 동작할 수 없다. 재사용성 : 하나의 액티비티에 여러 개의 프래그먼트를 조합하여 창이 여러 개인 UI를 구축할 수 있고, 하나의 프래그먼트를 여러 액티비티에서 재사용할 수 있다. 빠르고 효율적 : 액티비티로 화면을 넘기는 것보다 프래그먼트로 일부만 바꾸는 것이 자원 이용량이 적어 속도가 빠르다. ᖜ ‿ᖜ 그렇다면 액티비티는 프래그먼트를 붙여놓기 위한 그저 배경인가?탭레이아웃같은 전역 요소는 액티비티에 배치해야 한다. 목적에 따라 액티비티와 프래그먼트 중 적합한 곳에 배치하며 적절히 사용할 것. ViewPager2화면을 스와이프하면 탭과 함께 움직이는 뷰. 액티비티안에 ..

팀프로젝트 [산타의 리스트]

사전준비 주제, 프로젝트명 정하기연락처 앱 프로젝트는 연락처의 본질을 지키되, 기존 연락처앱과의 차별성을 요구하는 프로젝트이다. 팀원분들의 의견을 조합해서 낸 나의 '선물' 아이디어가 채택됐고 팀원분이 찾아본 '산타' 키워드가 앱의 특징을 잘 드러내므로 앱 이름은 산타의 리스트로 채택됐다.  역할 정하기바쁜 기간이 끝난 직후라 진도도 쫓기고 있었고 잠도 잘 못자서 고민됐지만 그래서 더 욕심 부리고 싶었다. 공연 때문에 뒤쳐진 느낌이었고 팀프로젝트는 배울 게 많은 기회이기 때문이다. 선택사항인 알림을 하고싶다고 제일 먼저 이야기했고 그 뒤엔 남는 자리 채워서 알림과 디테일페이지 담당이 됐다.   와이어프레임 만들기현업 하시던 분들이 계신터라 와이어프레임에서부터 배울 게 많았다. 글씨크기는 12 14 16을..

안드로이드 앱개발 숙련 강의 [View Binding, Adapter View, RecyclerView, Fragment, Dialog, Notification]

뷰 바인딩 View Binding모듈에 있는 각 XML 레이아웃 파일의 결합 클래스를 생성. 레이아웃 파일의 이름을 기반으로 한 바인딩 클래스를 자동생성. 인스턴스는 해당 레이아웃에 ID가 있는 모든 뷰의 직접 참조 포함 findViewById와 비교Null 안전성 Null Safety앱이 레이아웃의 각 뷰를 직접 참조할 수 있게 해주는 안전한 코드를 자동으로 생성null로 인한 오류, 즉 뷰가 아직 화면에 나타나지 않았는데 그 뷰를 사용하려고 할 때 생길 수 있는 문제들을 예방  레이아웃에 버튼이 있어야 하는데 아직 버튼이 생성되지 않았다 -> 안전하게 처리레이아웃의 일부만 뷰가 있다 -> 해당 뷰가 '가능성 있는 null'(Nullable)임을 알림타입 안전성 Type Safety뷰의 타입과 바인딩 ..

개인 프로젝트 [에코마켓 앱]

2024. 07. 11 시작!Main page조건 :디자인 및 화면 구성을 최대한 동일하게 해주세요. (사이즈 및 여백도 최대한 맞춰주세요.) ✨ 상품 데이터는 아래 dummy data 를 사용합니다. (더미 데이터는 자유롭게 추가 및 수정 가능)RecyclerViewer를 이용해 리스트 화면을 만들어주세요. 상단 툴바를 제거하고 풀스크린 화면으로 세팅해주세요. (상태바(시간/배터리 표시하는 최상단바)는 남기고) 상품 이미지는 모서리를 라운드 처리해주세요. 상품 이름은 최대 두 줄이고, 그래도 넘어가면 뒷 부분에 …으로 처리해주세요. 뒤로가기(BACK)버튼 클릭시 종료하시겠습니까? [확인][취소] 다이얼로그를 띄워주세요. (예시 비디오 참고) 상단 종모양 아이콘을 누르면 Notification을 생성해 ..