안드로이드 11

UMC 스터디 8주차

Token : 인증과 사용자의 구분을 도와주는 역할 = 놀이공원 들어갈 때 입장표 같은 역할 인증방식 - Auth 외부 서비스에서도 인증을 가능하게 하고, 그 서비스의 API도 이용 가능, 인증 토큰만으로 인증 가능, 보안에 취약 - Cookie 쿠키를 통해 클라이언트 로그인 상태를 유지시킨다, 유출과 조작의 위험 - JWT (JSON Web Token) 인증에 필요한 정보들을 암호화한 토큰, 인증 정보에 대한 저장소 필요 없음, 유효기간 만료 전까지 계속 사용 가능, 모바일에서 잘 동작 로그인 API 클라이언트 -> 서버 : ID, Password 서버 -> 클라이언트 : JWT, userIdx 서버가 존재할 때는 JWT 사용, 존재하지 않을 때는 userIdx사용 사용자 별로 Album에 좋아요를 눌..

안드로이드 2022.05.15

UMC 안드로이드 7주차

강의 출처 : 컴공선배 데이터베이스란 ? - 데이터를 어딘가에 쌓아 두고 보관하며 필요할 때마다 추가하거나 조회, 수정, 삭제할 수 있는 장소 SharedPreference는 DB인가 ? - key/value 형태로 데이터를 저장할 수 있는 데이터 구조 - 보안성이 떨어짐 - 간단한 정보 저장을 위해서만 사용, 나머지는 DB 사용하기 데이터베이스 - 서버 제공 데이터베이스 : 네트워크 통신, 와이파이, 데이터 없으면 접근 불가 , 시간 오래 걸림 - 앱 내부 데이터베이스 : 와이파이, 데이터 필요 없음 , 시간 빠름 Ex> 카카오톡_데이터 캐싱 처리 / SQLite - 앱 내부 데이터베이스를 사용하기 위한 관계형 데이터 베이스 관리 시스템 - RDBMS - 매우 복잡함 -> RoomDB 라이브러리를 통해..

안드로이드 2022.05.07

UMC 안드로이드 스터디 6주차

강의 출처 : 컴공선배 리스트뷰란? - 사용자가 정의한 데이터 목록을 제한된 영역 안에서 목차의 형태로 유연하게 표현하기 위한 객체 - 격자 형태 등 형태가 다양하다 - 스크롤 할 때마다 itemView 객체들의 삭제, 생성이 반복된다. (낭비가 심해진다) 리사이클러뷰? - 재사용이 가능한 형태 - 스크롤을 하더라도 뷰 객체를 생성,삭제하지 않으면서 재활용이 가능하다 데이터 -> Adapter -> RecyclerView(ViewHolder) ViewHolder란 view 객체들이 날아가지 않도록 담고 있는 객체라고 생각하면 된다 리스트뷰와 리사이클러뷰의 차이 ViewHolder의 유무 차이라고 볼 수 있다. 리스트뷰는 itemView객체들을 붙잡을 수 있는 것이 없기 때문에 날아가는 것이다. 반면 리사..

안드로이드 2022.04.29

UMC 안드로이드 스터디 5주차

강의 출처 : 컴공선배 생명주기란? 어떤 것이 태어나고 죽기까지의 기간 Activity가 생성되고 소멸되기까지의 기간과 관련된 함수들 Activity의 생명주기를 사용하면 어플을 더 안전하게 구현할 수 있다. Ex) 게임을 하다가 전화가 왔을 때, 상태변화에 대해서 체크를 해서 전화를 끊었을 때 다시 돌아갈 수 있도록 구현해야함 생명주기 패러다임 액티비티 생성 -> onCreate() -> onStart() -> onResume() -> 액티비티 실행 -> onPause() -> onStop() -> onDestroy() -> 액티비티 소멸 onCreate() - 최초 실행 시에만 해줘야 하는 작업들 - Data Binding - View 생성 - setContentView와 같은 레이아웃 정의 onSt..

안드로이드 2022.04.29

Retrofit 공부 - recyclerView실습

출처 : 이것이 안드로이드다 with 코틀린 Glide 라이브러리 사용 : 이미지를 화면에 보여주기 위해서 이미지 로딩 라이브러리를 사용할 수 있는데 이미지가 있는 URL 주소만 알려주면 해당 이미지가 있는 서버에 접속하여 이미지를 다운로드해서 이미지뷰에 보내는 편리한 도구 프로젝트명 - NetworkRetrofit : 깃허브 사용자들의 정보를 가져오는 실습 GlideApp.with(컨텍스트).load("이미지 주소").into(이미지뷰의 ID) 형식으로 Glide 라이브러리를 사용한다. [레트로핏 부분 코드] [실행 화면]

안드로이드 2022.04.05

UMC 안드로이드 스터디 4주차

강의 출처 : 컴공선배 Thread 프로그램 - 어떤 작업을 위해 실행할 수 있는 파일 프로세스 - 컴퓨터에서 연속적으로 실행되고 있는 프로그램 Thread - 프로세스 내부에서 일을 하는 주체 - 실, 흐름(사전적 정의) !! Thread의 문제점 Process는 기본적으로 Main thread 라고 불리는 한개의 쓰레드를 가지고 있다. 동시작업 = Multi Thread : 하나의 프로세스 내부에서 동시에 몇가지 일을 수행하는 것 동시작업이 수행되려면 prcoess 내부에 여러개의 thread가 있어야 한다. - 동기 방식 (Single thread): 하나의 스레드만 가지고 일을 처리 - 비동기 방식 (Multi thread) : 멀티 스레드로 여러 스레드를 동시 작업 처리한다. 요청이 들어와도 결..

안드로이드 2022.04.05

UMC 안드로이드 스터디 4주차

강의 출처 : 컴공선배 Thread 프로그램 - 어떤 작업을 위해 실행할 수 있는 파일 프로세스 - 컴퓨터에서 연속적으로 실행되고 있는 프로그램 Thread - 프로세스 내부에서 일을 하는 주체 - 실, 흐름(사전적 정의) Process는 기본적으로 Main thread 라고 불리는 한개의 쓰레드를 가지고 있다. 동시작업 = Multi Thread : 하나의 프로세스 내부에서 동시에 몇가지 일을 수행하는 것 동시작업이 수행되려면 prcoess 내부에 여러개의 thread가 있어야 한다. - 동기 방식 (Single thread): 하나의 스레드만 가지고 일을 처리 - 비동기 방식 (Multi thread) : 멀티 스레드로 여러 스레드를 동시 작업 처리한다. 요청이 들어와도 결과를 기다리지 않고 계속 요..

안드로이드 2022.04.04

Retrofit 공부

네트워크 : 2대 이상의 컴퓨터가 연결되어 데이터를 주고받는 통신 체계 HTTP = 프로토콜 프로토콜 : 컴퓨터 간의 데이터를 전송하는 방식이 서로 다르면 데이터를 주고받을 때마다 각 컴퓨터의 전송 방식에 맞게 코드를 수정해야함 프로토콜은 이런 전송 방식을 표준화한 통신 규약이다. TCP/IP가 프로토콜이다. 웹은 HTTP라는 프로토콜을 사용하는 것 패킷 : 데이터가 전송되는 실제 단위 URL 프로토콜http:// 서버 주소www.hanbit.co.kr 포트:80/ 리소스 경로store/books/look.php 쿼리스트링?p_code=B6382321674 쿼리스트링 : 요청 주소의 뒤에 옵션 데이터를 붙여서 전달하는 방식 HTTP : 헤더와 바디로 구성 HTTP 메서드 : GET, POST, PUT, ..

안드로이드 2022.03.30

UMC 안드로이드 스터디 3주차

강의 출처 : 컴공선배 유용한 위젯들 ViewPager - 화면 내에서 스크롤 되어 fragment들이 보여지는 것 - RecyclerView와 ViewPager의 공통점 : 데이터 리스트를 표현 할 수 있으며 스크롤로 데이터들을 볼 수 있다. 여러개의 데이터를 보여줌 - 차이점: 데이터 리스트에서 추가 삭제 필요X, 한번에 하나의 자식만 보여주고 싶다 -> ViewPager사용 데이터 리스트에서 추가 삭제 필요O, 여러 자식 보여주고 싶다 -> RecyclerView사용 FragmentStateAdapter FragmentStateAdapter는 ViewPager2의 어댑터를 생성할 때 사용되는 클래스 중 하나로, ViewPager2와 Fragment를 함께 사용할 때 주로 사용되며 특히, 이 때 Fr..

안드로이드 2022.03.28

UMC 안드로이드 스터디 2주차

강의 출처 : 컴공선배 Activity 화면에 UI를 표시하는 역할 AppcompatActivity : 안드로이드의 하위버전을 지원하는 Activity의 일종 Intent : 택배 상자라고 생각하기 ( activity에서 activity로 화면을 전환시키고 싶을 때 사용) Fragment 조각이라고 생각하기 조각으로 나누어 독립성을 추가 bottomNavigationView를 사용할 때 하단 바 제외한 나머지 부분을 변경하고 싶으면 Fragment 전환을 사용한다 Data Class 데이터 형태를 선언 후 다른 곳에서 사용한다 실습 내용 Activity 추가할 때마다 manifests파일에 추가해줘야한다. visibility : GONE -> 공간까지 없어짐 / INVISIBLE -> 공간은 유지된 채 ..

안드로이드 2022.03.22