코틀린

· Kotlin
푸시 알람 좋아요, 팔로우, 댓글이 눌렸을 때 푸시 알람을 발송하는 기능을 구현하며 프로젝트를 마무리해보자. 푸시 알람은 서버 측에서 발송해야 한다. Firebase에 있는 fcm 기능을 이용하여 특정 계정, 프로젝트(앱)에 푸시를 전송할 수 있다. pushDTO를 만들어 push에 대한 내용을 관리하자. package com.example.firstapp.navigation.model data class PushDTO( var to: String? = null, var notification: Notification = Notification() ){ data class Notification( var body: String? = null, var title: String? = null ) } 위의 구..
· Kotlin
알람 RecyclerView 이전에 만들어 놓은 alarmDTO를 이용하여 데이터베이스에서 알람 내용을 읽어와 알람 화면에 띄워보자. alarm fragment이다. 알람을 recyclerview에 하나씩 올려보자. package com.example.firstapp.navigation import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import android.widget.ImageView import android.widget.TextView import androidx.fragment.app.Fragment import androidx.recyc..
· Kotlin
알람 로그 만들기 어플에서 좋아요가 눌렸거나 댓글이 달렸거나 혹은 팔로우가 됐다면 유저에게 알람을 보내주는 기능을 만들어 보자. 그렇기 하기 위해서는 알람의 log를 남겨 놓는 작업이 필요하다. 따라서 각 Activity마다 log를 firebase에 남겨 놓는 함수를 만들어보자. 우선 AlarmDTO라는 모델을 정의하여 표준화해보자. package com.example.firstapp.navigation.model data class AlarmDTO( var destinationUid: String? = null, var userId: String? = null, var uid: String? =null, var kind: Int? = null, var message: String? = null, va..
· Kotlin
Grid View 인스타 검색 탭에서 보면 contents들이 grid view를 이용하여 표시된다. 이를 표현하기 위해서 안드로이드에서 제공하는 grid view를 이용하여 contents를 띄워보자. fragment_grid를 위와 같이 변경하자. LinearLayout에 RecyclerView를 넣어 새로 등록되는 contents들도 띄울 수 있다. package com.example.firstapp.navigation import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import android.widget.ImageView import andr..
· Kotlin
유저 페이지 유저 페이지를 만들기 위해서는 현재 로그인된 계정의 유저페이지와 다른사람의 유저페이지를 고려하여 만들어야 한다. 자신의 페이지와 다른 사람의 페이지의 공통인 요소를 분석한 뒤 뷰를 짜 보자. 프로필 사진, 게시물, 팔로워, 팔로우, 게시물 이미지는 공통으로 갖는 요소이다. 이를 다루는 UserFragment를 작성해보자. package com.example.firstapp.navigation import android.content.Intent import android.graphics.PorterDuff import android.os.Bundle import android.util.Log import android.view.LayoutInflater import android.view.V..
· Kotlin
RecyclerView 리사이클러뷰를 이용하여 피드를 띄워보자. home fragment를 다음과 같이 변경하자. 리사이클러뷰에 띄워질 아이템들을 만들자. 이와 같은 아이템들이 하나씩 띄워진다고 생각하면 된다. home fragment에서 리사이클러뷰에 어댑터와 매니저를 등록한다. 이때 어댑터를 custom 해서 등록하자. inner class DetailViewRecyclerViewAdapter: RecyclerView.Adapter(){ var contentDTOs: ArrayList = arrayListOf() var contentUidList: ArrayList = arrayListOf() init { firestore?.collection("images")?.orderBy("timestamp")..
· Kotlin
콘텐츠 데이터 모델 데이터의 구조를 지키지 않고 마구잡이로 삽입한다면 나중에 관리하기 쉽지 않을 것이다. 그렇기 때문에 데이터에 대한 모델을 작성하여 데이터의 구조를 표준화해주는 작업이 필요하다. navigation 패키지 안에 'model'이라는 패키지를 만들자. 그 후 contentDTO라는 코틀린 파일을 작성하자. package com.example.firstapp.navigation.model import java.sql.Timestamp data class ContentDTO(var explain: String? = null, var imageUrl: String? = null, var uid: String? = null, var userId: String? = null, var timestam..
· Kotlin
Bottom Navigation bottomNavigation을 추가하여보자. 여기에 menu를 적용하기 위해 menu res를 만들어야 한다. 간단하게 id와 icon정도만 정의해주면 된다. 이제 navigation에서 icon이 클릭되었을 때 처리 로직만 만들어주면 간단하게 처리할 수 있다. icon이 클릭되었을 때 main_content에 Fragment를 바꿔줄 것이다. 일단은 구분만 되도록 색상만 바꾼 간단한 Fragment를 구성해보자. package com.example.firstapp.navigation import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view...
· Kotlin
구글 로그인 구글 로그인과 같은 소셜 로그인 기능을 추가해보자. Gradle에서 google-service 버전이 4.2.x 버전 이상이어야 한다. 그리고 라이브러리를 설치하자. 그리고 만들어 놓은 구글 로그인 버튼에 id를 추가하자. 이제 버튼을 아이디로 찾아 리스너를 달고 동작시켜보자. package com.example.firstapp import android.content.Intent import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.util.Log import android.widget.Button import android.widget.EditText import android.widg..
· Kotlin
로그인 뷰 로그인 뷰를 짜 보자. 이제 액티비티를 수정해보자. package com.example.firstapp import android.content.Intent import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import android.util.Log import android.widget.Button import android.widget.EditText import android.widget.Toast import com.google.firebase.auth.FirebaseAuth import com.google.firebase.auth.FirebaseUser class LoginActivity : AppComp..
hvv_an
'코틀린' 태그의 글 목록