인프런 - 강의/2 - 누구나 할 수 있는 안드로이드 앱 개발 (Kotlin) 15

3-5 게시판 - Firebase Database 받아오기, listview

저번 시간에 데이터를 던지는 것 까지 해봤습니다. 이번 시간에는 데이터를 받아오는 것을 해볼텐데, 좀 더 예쁘게 데이터 모델을 변경하는 것 부터 해보겠습니다. 아래와 같이 조금 변경해주고 데이터를 조금 다르게 넣어주면 아래와 같이 생깁니다. board라는 디렉토리 밑에, 데이터들이 차곡차곡 들어간 것을 볼 수 있습니다. 자, 그렇다면 이제 저것들을 불러와볼까요? 데이터를 불러오는 방법에는 여러가지가 있는데 아래의 링크 참조하셔도 좋을 것 같고 https://stack07142.tistory.com/282 Firebase Database 데이터 읽기, 3가지 방법 Firebase Database 데이터 읽기, 3가지 방법 Firebase Database에서 데이터를 읽는 방법으로는 아래와 같이 3가지가 있..

3-4 게시판 - Firebase Database 입력, UI

자, 이제 로그인이 성공하면 BoardListActivity로 이동시켜줍니다. 자, 이제 BoardListActivity에 게시판에 쓴 글들을 가져와야 하는데, 일단 boardInputActivity로 이동시켜주는 버튼이랑, 회원 정보를 가져와봅니다. 그래서 레이아웃 파일을 한번 만들어주고 넘어갈 때, 유저 UID를 함께 넘겨주겠습니다. auth에 유저 정보를 받아와서 intent.putExtra로 넘겨주고 boardInputActivity에서 받아와줍니다. 자 여기까지 boardInputActivity로 회원가입해서 uid를 넘겨주는 과정이었습니다. ( Firebase Database로 들어가면, 위의 Cloud Firestore 라는게 있는데 이 것에 대한 설명은 아래에 링크에 있습니다. 구글링 해보..

3-2 게시판 - firebase email login

일단 Firebase 로 들어가서 프로젝트 만들기를 해줍니다. 이렇게 프로젝트를 만들고나서 Android 앱에 Firebase 추가해주고 SHA-1 라는 것을 등록해줘야 하는데 Android studio에 오른쪽 gradle -> Tasks -> Android -> signingReport를 누르면 SHA-1 를 볼 수 있습니다. 그 다음 구성파일 집어넣고 나머지 하라는거 해주고 여기까지 하면 프로젝트 생성이 완료되었고. 이메일 로그인을 구현해봅시다. 자 이메일/비밀번호를 사용설정하고 이제 드디어 코드로 구현해봅니다. 이제 여기에서 시키는대로 https://firebase.google.com/docs/auth/android/start?hl=ko Android에서 Firebase 인증 시작하기 | Fire..

3-1 게시판 - 개요

대부분의 웹/앱에 있는 기능 중에 하나인 게시판을 만들어보겠습니다. 게시판은 두고두고 정말정말 많이 많드는 기능중에 하나인데요 자, 한번 시작해보겠습니다. 일단 회원가입 기능부터 만들어주고나서 게시판 글 쓰기 리스트뷰에 출력합니다. 이 과정에서 Firebase 로그인을 사용하고 Firebase Database도 사용합니다. 자, 이제 하나씩 해 보겠습니다. 게시판의 뭐 댓글이나 좋아요 알람 이런 것들은 뺐습니다. 실제로 이런 것들까지 넣으면 너무 강의가 길어지기 때문에 게시판은 대충 이렇게 만드는구나... 라고 감을 잡으시면 좋을 것 같습니다.

2-4 목표달성 앱 - Realm remove

Add Button 을 완료했으니, 이제 지우는 것을 해봅니다. 일단 remove버튼을 눌렀을 때 나오는 dialog를 만들어주고 removeTodo를 만들어서 dialog에 적용해주면 끝입니다. 다만, 이렇게 하면 문제가 있는데, 저 dialog에서 입력해준 값이 id에 없을 때, 에러가 나는 것입니다. 그래서 클릭하면 삭제가 되도록 한번 해보겠습니다. setOnItemClickListener를 만들어서 누르는 것의 id를 보내줍니다. 이렇게 해주면 누를 때 마다 잘 없어집니다. 끝 :)

2-3 목표달성 앱 - Realm UI, add

일단 Listview와, add remove 버튼을 만듭니다. 자, 이렇게 수정을 했으면은 add 버튼을 누르면, 입력할 수 있게 dialog 를 만들어줍니다. 일단 레이아웃부터 만드는데 이렇게 레이아웃을 만들어줍니다. 그 다음, dialog에서 입력한 값을 받아와서, Realm에 넣어줍니다. addButton을 눌렀을 때 일어나는 이벤트로 처리해줍니다. 그리고 insertTodo에서 dialog에서 입력한 값을 받아서 처리할 수 있도록 약간의 수정을 했습니다. 또한 date에 Calendar.getInstance().timeInMillis를 받아와서 넣어줍니다. 이 시간의 타입은 검색을 통해 원하시는 형태로 넣어주시면 될 것 같습니다. 여기까지 하면 add 기능이 완성됬으니, Realm에 있는 것을 l..

2-2 목표달성 앱 - Realm Insert

이제 목표를 달성하는 앱을 만들어봅니다. 기존 서버에서 데이터를 주고 받는 형식이 아닌, 로컬 DB인 Realm을 사용해봅니다. 일단 Realm을 사용할 기본 세팅을 해주고 gradlew 파일에 추가를 해주고, Myapplication을 만들고, manifests에 세팅을 추가해줍니다. 그리고 RealmObject 를 만들어줍니다. 이제 Realm을 사용할 세팅이 완료되었으니, MainActivity에서 Insert를 구현해봅니다. nextId()의 경우에는, 순서대로 PrimaryKey인 id를 세팅해주는 것입니다. 자, 다음은 UI와 연결하고, Delete를 구현해봅니다. --- 아래의 블로그를 많이 참고하였습니다. https://duzi077.tistory.com/265 [Android/Kotlin..

2-1 개요

이번에 만들어 볼 앱은 목표달성 앱 입니다. 아래와 같이 목표를 add와 remove를 이용해서 추가하고 삭제할 수 있습니다. 이번에 만드는 앱은 앱을 종료하고 다시 실행하면 데이터가 없어지는 것도 아니고 서버에서 데이터를 받아오는 것도 아닙니다. Realm이라는 로컬 DB를 사용합니다. 때문에 앱을 종료하고 다시 실행해도 데이터가 남아있고, 따로 서버에서 데이터를 받아오지 않아도 데이터가 남아 있습니다. 자, 바로 실습으로 한번 들어가보겠습니다.

1-6 자취생으로 살아남기 앱 제작 - Fragment

일단 약간 레이아웃을 꾸며줍니다. Header 부분을 한번 만들어주고 자 그 다음 Fragment를 만들어줍니다. Section1Fragment라고 이름 지어줍니다. Include fragment factory meth --- Include interface callbacks 뭐 이런 체크박스가 있는데, 지금 필요한 것은 아니니, 체크를 빼 줍니다. fragment Layout부터 일단 만들어주고 이런 형태로 view에 접근해줍니다. 그런 다음 MainActivity layout에서 FrameLayout을 만들어주고 그 다음 섹션1 을 눌렀을 때, fragment가 나타나도록 처리해주면 끝 자, 이제 나머지부분은 잘 만드실 수 있을것이라 믿습니다~