- 필수과제
- Sopthub 로그인 페이지 만들기
- Sopthub 회원가입 페이지 만들기
- Sopthub 자기소개 페이지 만들기
로그인 | 회원가입 | 자기소개 |
---|---|---|
이미지 | 설명 |
---|---|
아이디와 비밀번호 중 하나라도 입력되지 않아도 "로그인 실패" 토스트 메시지 띄우기 | |
아이디와 비밀번호를 모두 입력하면 자기소개 페이지로 이동 | |
회원가입 버튼을 누를 시 회원가입 페이지로 이동 | |
하나라도 입력되지 않아도 "입력되지 않은 정보가 있습니다" 토스트 메시지 띄우기 | |
모든 정보가 입력되었을 경우 "회원가입 성공" 토스트 메시지 띄우기 |
- 필수 과제
- 자기소개 페이지에서 FollowerRecyclerView, RepositoryRecyclerView 만들기
- 하나의 RecyclerView는 Grid Layout으로 만들기
자기소개 페이지
이미지 | 설명 |
---|---|
- FollowerRecyclerView : LinearLayout으로 뷰 | |
- RepositoryRecyclerView : GridLayout으로 뷰 |
- 필수 과제
로그인 | 회원가입 | 프로필 |
---|---|---|
- 필수 과제
- POSTMAN 테스트
- 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 ) }