전체 글

전체 글

    [안드로이드] JWT 사용하기

    [안드로이드] JWT 사용하기

    https://sodock00.tistory.com/15 [UMC] 8주차 - 사용자 인증 방식(oAuth/JWT) [SignUpActivity] 회원가입 구현하기 [SignUpActivity] DB 데이터 User에 Add [LoginActivity] 화면만들기 [LoginActivity] 로그인 구현하기 [LoginActivity] jwt(userIdx) sharedPreference에 'id' (primary key.. sodock00.tistory.com JWT(Json Web Token)에 대한 전반적인 내용은 위에 정리해두었다. 오늘은 실전편, 실제 안드로이드에서 JWT를 사용하기 이다. 다시 한번 JWT 사용과정을 살펴보자!! * 실제 적용한 부분으로 조금씩 내용 추가할 예정 JWT 사용과정..

    [WEB] HTML 개념 알아보기

    Day 1 html, css, javascript란 무엇인지, 웹을 구성할 때 각각 어떤 역할을 하고 서로 어떠한 관계가 있는지 알아보기, html 개념 찾아보기 01. HTML - 마크업 언어, 웹페이지의 기본적인 형태를 만드는 정적 언어 - 태그와 태그로 구성되어 있음 - 웹의 구조 담당 02. CSS - 마크업 언어가 표시되는 방법(색상, 크기 등)을 지정하여 콘텐츠 구조를 꾸며주는 정적 언어 - 웹의 시각적인 표현 담당 03. Javascript - 브라우저 자체에서 내장된 해석기능을 이용한 클라이언트 기반의 일종의 스크립트 언어 - html과 css로 만들어진 웹페이지를 동적으로 변경해주는 언어 - 웹의 동적 처리 담당 04. html 개념 + 강의 요약 !+tab : 기본적인 html 파일 툴..

    [안드로이드] onViewCreated()에서 toast 사용하기

    [안드로이드] onViewCreated()에서 toast 사용하기

    Toast 메세지를 사용하려면 Toast.makeText(context, "text", duration) 순으로 사용하면 된다. 나는 onViewCreated()에서 Toast를 사용하는데 위 사진과 같이 context부분에서 오류가 발생했다. 찾아보니 기존에 들어가는 this, requireActivity() 대신 getActivity() 나 requireActivity() 를 사용해야 한다고 한다. 출처 : https://stackoverflow.com/questions/65991731/cant-make-toast-in-onviewcreated/65992324 Can't make toast in onViewCreated() This is inside a fragment and I am learning..

    [안드로이드/Retrofit2] No type arguments expected for class Call

    git pull을 받고 내 작업 재시작 전에 실행을 해봤는데.. "No type arguments expected for class Call" 라는 에러가 발생했다. 찾아보니 이 오류는 retrofit2를 import해줘야 하는데 잘 못 import한 경우 발생한다고 한다. 그런데 나 같은 경우는 import에 아예 retrofit이 안뜨는 상황... 머리를 쥐어뜯고 도대체 뭐가 문제인지 한참을 고민하다가 혹시나 하고 build gradle 파일에서 retrofit부분을 지우고 재정의 해준다음 싱크해줬다. // Retrofit2 implementation 'com.squareup.retrofit2:retrofit:2.9.0' implementation 'com.squareup.retrofit2:retro..

    [Git] 기본 명령어 & pull 오류 해결

    맨날 까먹어서... 내가 보려고 정리한다. 기본 명령어 #1 초기화 git init #2 스테이징 깃이 파일의 변경 내역을 저장할 때는 스테이징 이라는 단계를 거쳐서 저장한다. 스테이징은 변경사항 중에서 저장하고 싶은 부분만 선택하여 임시로 저장하는 것이다. git add . 위 코드는 폴더의 전체 변경 사항을 지정하여 스테이지에 넣는 것이다. . 대신 원하는 파일명을 넣을 수도 있다. 스테이징 된 파일은 커밋 직전 상태로 변경된다. #3 커밋 깃이 폴더의 변경 내용을 저장하는 단위를 커밋이라고 부른다. 스테이지에 있는 내용으로 커밋을 만드려면 commit 명령어를 사용하면 된다. git commit -m "커밋 메세지 입력" -m 옵션을 사용하면 에디터를 열지 않고 터미널에서 바로 메세지를 입력할 수 ..

    [Android] Navigation(네비게이션) 사용법

    [Android] Navigation(네비게이션) 사용법

    내가 보려고 적는 navigation 사용법... 0. Navigation이란? https://developer.android.com/jetpack/androidx/releases/navigation?hl=ko Navigation | Android 개발자 | Android Developers Navigation Navigation은 Android 애플리케이션 내에서 '대상' 사이를 탐색하는 프레임워크로, 대상이 Fragment, Activity 또는 기타 구성요소로 구현되었는지에 관계없이 일관된 API를 제공합니다. 최근 업데 developer.android.com 1. 사용법 1. build.gradle 파일에 navigation dependecy(의존성)을 추가하고 sync까지 완료해준다. 2. 네비..

    [UMC] 8주차 - 사용자 인증 방식(oAuth/Cookie/JWT)

    [UMC] 8주차 - 사용자 인증 방식(oAuth/Cookie/JWT)

    [SignUpActivity] 회원가입 구현하기 [SignUpActivity] DB 데이터 User에 Add [LoginActivity] 화면만들기 [LoginActivity] 로그인 구현하기 [LoginActivity] jwt(userIdx) sharedPreference에 'id' (primary key) 저장 [AlbumFragment] 하트 누르면 User 구분하여 Like Table 업데이트 [보관함 프래그먼트] 리사이클러뷰 및 좋아요 - DB의 클릭한 Album의 isLike 업데이트 사용자 인증 방식 01. oAuth 개념 : 다양한 플랫폼 환경에서 권한 부여를 위한 산업 표준 프로토콜 : 우리가 흔히 보는 구글로 로그인하기, 페이스북로그인 하기 등 장점 : 로그인 과정에서 요구되는 세션관리..

    [UMC] 7주차 - RoomDB

    [UMC] 7주차 - RoomDB

    RoomDB DBMS의 종류(rdbms,nosql) sql 쿼리문법 실제로 모든 데이터를 캐싱처리 하려면 어떻게 해야할까? ERD 설계 ⚫ ERD(Entity-Relationship Diagram) : ER다이어그램 , 데이터베이스 구조를 한 눈에 알아보기 위해 그리는 다이어그램 ⚫ 장점 : 1. 디자인 시간 효율이 증가 : 데이터베이스를 설계할 때 다양한 테이블과 해당 테이블 간의 관계들을 하나하나 그리면서 설계하기에는 시간 효율이 떨어짐 > 이때 ERD를 사용하면 전체 데이터 베이스의 구조를 먼저 잡고 진행할 수 있다. 2. 데이터 수집을 편하게 함 : 데이터의 다양한 특징을 한 눈에 볼 수 있다. > 데이터 수 집 시 데이터의 요구사항이나 흐름에 맞춰 개발을 할 수 있다. ⚫ ER모델 구성 : 요구..

    [UMC] 6주차 - ListView/ RecyclerView / 데이터 렌더링

    [UMC] 6주차 - ListView/ RecyclerView / 데이터 렌더링

    1. [오늘 발매음악 리사이클러뷰 생성] ⇒ 클릭 시 액티비티 전환 with 데이터 렌더링 ListView ListView란? 정의 : 사용자가 정의한 데이터 목록을 세로 방향으로 나열하여 화면에 표시하는 뷰 그룹의 한 종류단점 : 최초 생성이나 스크롤 시 아이템을 생성할 때마다 뷰바인딩을 하기 때문에 성능저하가 일어난다. / VewHolder를 제공하지 않아서 finfViewByld를 매번 호출하여 사용해야 한다. 장점 : 단순하고 ArrayAdapter가 제공되어서 더 빨리 적용할 수 있다. RecyclerView List View vs RecyclerView [오늘 발매음악 리사이클러뷰 생성] ⇒ 클릭 시 액티비티 전환 with 데이터 렌더링 - RecycleView : 동일한 형태의 뷰의 데이터에..

    [UMC] 5주차 - 액티비티 생명주기 / MediaPlayer / GSON,JSON

    [UMC] 5주차 - 액티비티 생명주기 / MediaPlayer / GSON,JSON

    1. [Main] 화면 Seekbar 구현해서 [Song] 에서의 진행시간이 반영하기 LifeCycle Lifecycle Why? Lifecycle 패러다임 1. 활성 상태 : 액티비티가 실행되어 화면에 나오고 사용자 이벤트를 처리할 수 있는 상태 / onCreate > onStart > onResume 순으로 함수가 호출되며 setContentView 함수를 onCreate에서 호출하여 출력한 내용이 액티비티 화면에 나오도록 한다. 2. 일시 정지 상태 : onPause 함수까지 호출된 상태 / 화면 분할 모드에서 확인할 수 있다. (사용자 이벤트 처리 불가능) 3. 비활성 상태 : 액티비티가 종료되지 않고 화면에만 보이지 않는 상태 / 앱 실행 상태에서 홈 화면만 눌렀을 때 onPause > onSt..

    [UMC] 4주차 - Thread(스레드) 개념 및 사용법

    [UMC] 4주차 - Thread(스레드) 개념 및 사용법

    1. splash 화면 구현 2. SongActivity Timer Seekbar 구현 Thread 정의) 프로세스(process : 실행되는 프로그램) 내에서 순차적으로 실행되는 실행 흐름의 최소 단위 개념) 어떠한 일을 백그라운드로 돌려두고, 그 동안 다른 여러가지 일을 하는 것 Handler : 일반적인 Thread간 상호 작용을 위한 클래스: 안드로이드에서는 Main Thread 를 통해서만 화면 UI 변경 가능 > 핸들러를 사용해서 Main Thread 에 접근하여 UI를 수정 : 다른 Thread가 전송하는 Message와 Runnable 객체를 받을 수 있다. runOnUiTread : 현재 스레드가 UI 스레드라면 UI 자원을 사용하는 행동에 대해서는 즉시 실행되고, 만약 현재 스레드가 U..

    [UMC] 3주차 - 다양한 화면 전환

    [UMC] 3주차 - 다양한 화면 전환

    Viewpager 스와이프 이벤트로 화면을 전환할 때 사용 FragmentStateAdapter : 각 항목을 프래그먼트로 작성했을 때 사용 Indicator : 화면 하단에 화면 전환시 몇 번째 화면인지를 표시하는 뷰 step 1 : MainAct ) ViewPagerFragment를 띄워주는 역할만 수행 LinearLayout을 전체화면으로 지정 > 해당 Layout에 ViewPagerFragment를 띄움 class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_ma..