참고 사이트
https://aws.amazon.com/ko/blogs/korea/building-an-android-app-with-aws-amplify-part-1/
1. 새로운 프로젝트를 하나 만들어 줌
- https://mimisongsong.tistory.com/12에서 설정을 완료했다면 프로젝트를 만들 필요가 없음
2. AWS 환경설정을 해줌
https://yebon-kim.tistory.com/4 를 보고 환경설정 후 , AWS Amplify에 앱 빌드
3. build.gradle(Module.app) 설정
- dependencies 에 추가해줌
implementation('com.amazonaws:aws-android-sdk-mobile-client:2.8.+@aar') { transitive = true }
implementation('com.amazonaws:aws-android-sdk-auth-userpools:2.8.+@aar') { transitive = true }
implementation('com.amazonaws:aws-android-sdk-auth-ui:2.8.+@aar') { transitive = true }
4. AndroidManifest.xml 에 설정 인터넷 허가 설정 추가
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
5. Empty Activity를 추가해준다
6. AndroidManifest.xml에서 main을 AuthenticationActivity로 바꿔준다
( 로그인 화면이 메인이 되기 위해 )
결과 -> 앱 실행하면 메인화면이 뜨고, Create New Account 를 누르면 회원가입 화면이 나옴,
폰 번호( +821012345678)를 입력하면 계정생성 후 MainActivity로 이동 ( 단점 : 로그아웃이 없다 )
+추가
AWS Amplify 로그아웃버튼
닉네임과 로그아웃 버튼 만들기
1. Settings.kt
import android.content.Intent
import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import com.amazonaws.mobile.client.AWSMobileClient
import kotlinx.android.synthetic.main.activity_settings.*
class Settings : AppCompatActivity() {
private lateinit var auth:AWSMobileClient
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_settings)
// ID or 닉네임이 textView에 보이기 위한 함수
auth = AWSMobileClient.getInstance()
textView18.text = auth.username.toString()
// 로그아웃 버튼 생성
button5.setOnClickListener{
auth.signOut()
val logout = Intent(this, Aws::class.java)
startActivity(logout)
}
}
}
2. activity_settings.xml
<TextView
android:id="@+id/textView14"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="ID"
android:textSize="20sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.163"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.401" />
<TextView
android:id="@+id/textView18"
android:layout_width="213dp"
android:layout_height="26dp"
android:text="TextView"
android:textSize="20sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.616"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.4" />
<Button
android:id="@+id/button5"
android:layout_width="150dp"
android:layout_height="70dp"
android:fontFamily="@font/nanumsquareroundeb"
android:text="로그아웃"
android:textColor="@color/white"
android:textSize="20sp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="0.498"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent"
app:layout_constraintVertical_bias="0.704" />
참고
'안드로이드 스튜디오' 카테고리의 다른 글
[안드로이드 스튜디오] 앱 배포 (0) | 2021.11.30 |
---|---|
[안드로이드 스튜디오 자바] import android.support.v7.app.AppCompatActivity 에 오류가 생길 때 (0) | 2021.11.08 |
[안드로이드 스튜디오 코틀린] window에서 AWS Amplify 환경 설정 (0) | 2021.10.16 |
[안드로이드 스튜디오] 헥스 색상 표 (0) | 2021.10.13 |
[안드로이드 스튜디오 코틀린] 보라색 테마 & 버튼 색 변경하기 (0) | 2021.10.13 |