Skip to content

29th-WE-SOPT-Android-Part/Android-Chaeyoung

Repository files navigation

Android-Chaeyoung

github_심채영_ver1-20

week1

  • 필수과제
  1. Sopthub 로그인 페이지 만들기
  2. Sopthub 회원가입 페이지 만들기
  3. Sopthub 자기소개 페이지 만들기

전체 화면 구성

로그인 회원가입 자기소개
image image image
이미지 설명
아이디와 비밀번호 중 하나라도 입력되지 않아도 "로그인 실패" 토스트 메시지 띄우기
아이디와 비밀번호를 모두 입력하면 자기소개 페이지로 이동
회원가입 버튼을 누를 시 회원가입 페이지로 이동
하나라도 입력되지 않아도 "입력되지 않은 정보가 있습니다" 토스트 메시지 띄우기
모든 정보가 입력되었을 경우 "회원가입 성공" 토스트 메시지 띄우기

week2

  • 필수 과제
  1. 자기소개 페이지에서 FollowerRecyclerView, RepositoryRecyclerView 만들기
  2. 하나의 RecyclerView는 Grid Layout으로 만들기

자기소개 페이지

이미지 설명
- FollowerRecyclerView : LinearLayout으로 뷰
- RepositoryRecyclerView : GridLayout으로 뷰

week3

  • 필수 과제
로그인 회원가입 프로필

week4

  • 필수 과제

서버통신

  1. POSTMAN 테스트
  • 회원가입 완료 회원가입

  • 로그인 완료
    로그인

  1. retrofit interface와 구현체, Requset/Response 객체에 대한 코드
  • retrofit interface : SampleService.kt

    import retrofit2.Call
    import retrofit2.http.Body
    import retrofit2.http.Headers
    import retrofit2.http.POST
    
    interface SampleService {
        @Headers("Content-Type:application/json")
        @POST("user/login")
        fun postLogin(
            @Body body : RequestLoginData
        ) : Call<ResponseLoginData>
    }
    • retrofit 구현체 : ServiceCreator.kr
    import retrofit2.Retrofit
    import retrofit2.converter.gson.GsonConverterFactory
    
    object ServiceCreator {
      private const val BASE_URL = "https://asia-northeast3-we-sopt-29.cloudfunctions.net/api/"
    
      private val retrofit : Retrofit = Retrofit
          .Builder()
          .baseUrl(BASE_URL)
          .addConverterFactory(GsonConverterFactory.create())
          .build()
    
      val sampleService: SampleService = retrofit.create(SampleService::class.java)
    }
    • Request : RequestLoginData.kt
    import com.google.gson.annotations.SerializedName
    
    data class RequestLoginData(
        @SerializedName("email")
        val email : String,
        val password : String
    )
    • Response : ResponseLoginData.kr
    data class ResponseLoginData(
      val status : Int,
      val success : Boolean,
      val message : String,
      val data : Data
    ) {
      data class Data(
          val id : Int,
          val name : String,
          val email : String
      )
    }

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages