From 6a571d784c0c1c124bfaed7dcbeb536510557918 Mon Sep 17 00:00:00 2001 From: Newt Date: Tue, 1 Aug 2023 03:12:03 +0900 Subject: [PATCH 1/3] =?UTF-8?q?[Feat]=20=EC=84=A4=EC=A0=95=EC=B0=BD=20UI?= =?UTF-8?q?=20=EA=B5=AC=ED=98=84=20#9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/src/main/AndroidManifest.xml | 10 +- .../pinple_aos/AccessRequestActivity.kt | 2 +- .../example/pinple_aos/PreferenceActivity.kt | 12 + .../main/res/drawable/button_switch_off.xml | 12 + .../main/res/drawable/button_switch_on.xml | 12 + app/src/main/res/drawable/icon_app_info.xml | 18 + app/src/main/res/drawable/icon_arrow_next.xml | 20 ++ .../res/drawable/icon_notification_black.xml | 12 + app/src/main/res/drawable/icon_user_small.xml | 12 + .../main/res/drawable/preferences_line.xml | 7 + app/src/main/res/drawable/switch_thumb.xml | 5 + .../main/res/drawable/switch_thumb_off.xml | 17 + app/src/main/res/drawable/switch_thumb_on.xml | 17 + app/src/main/res/drawable/switch_track.xml | 5 + .../main/res/drawable/switch_track_off.xml | 15 + app/src/main/res/drawable/switch_track_on.xml | 15 + app/src/main/res/drawable/tab_bar.xml | 7 + .../main/res/layout/activity_preference.xml | 327 ++++++++++++++++++ 18 files changed, 519 insertions(+), 6 deletions(-) create mode 100644 app/src/main/java/com/example/pinple_aos/PreferenceActivity.kt create mode 100644 app/src/main/res/drawable/button_switch_off.xml create mode 100644 app/src/main/res/drawable/button_switch_on.xml create mode 100644 app/src/main/res/drawable/icon_app_info.xml create mode 100644 app/src/main/res/drawable/icon_arrow_next.xml create mode 100644 app/src/main/res/drawable/icon_notification_black.xml create mode 100644 app/src/main/res/drawable/icon_user_small.xml create mode 100644 app/src/main/res/drawable/preferences_line.xml create mode 100644 app/src/main/res/drawable/switch_thumb.xml create mode 100644 app/src/main/res/drawable/switch_thumb_off.xml create mode 100644 app/src/main/res/drawable/switch_thumb_on.xml create mode 100644 app/src/main/res/drawable/switch_track.xml create mode 100644 app/src/main/res/drawable/switch_track_off.xml create mode 100644 app/src/main/res/drawable/switch_track_on.xml create mode 100644 app/src/main/res/drawable/tab_bar.xml create mode 100644 app/src/main/res/layout/activity_preference.xml diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 745817e..c42bd36 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -1,6 +1,6 @@ + xmlns:tools="http://schemas.android.com/tools"> @@ -18,9 +18,9 @@ android:label="@string/app_name" android:supportsRtl="true" android:theme="@style/Theme.PINPLE_AOS" - tools:targetApi="31" > + tools:targetApi="31"> + android:exported="true"> @@ -52,7 +52,7 @@ android:exported="true" /> + android:exported="true"> diff --git a/app/src/main/java/com/example/pinple_aos/AccessRequestActivity.kt b/app/src/main/java/com/example/pinple_aos/AccessRequestActivity.kt index 0026a3d..5374eb3 100644 --- a/app/src/main/java/com/example/pinple_aos/AccessRequestActivity.kt +++ b/app/src/main/java/com/example/pinple_aos/AccessRequestActivity.kt @@ -41,7 +41,7 @@ class AccessRequestActivity : AppCompatActivity() { val moveButton = findViewById(R.id.button_check) fun moveToAnotherPage(){ - val intent = Intent(this, LandingActivity::class.java) + val intent = Intent(this, PreferenceActivity::class.java) intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION) startActivity(intent) } diff --git a/app/src/main/java/com/example/pinple_aos/PreferenceActivity.kt b/app/src/main/java/com/example/pinple_aos/PreferenceActivity.kt new file mode 100644 index 0000000..e2942c1 --- /dev/null +++ b/app/src/main/java/com/example/pinple_aos/PreferenceActivity.kt @@ -0,0 +1,12 @@ +package com.example.pinple_aos + +import android.os.Bundle +import androidx.appcompat.app.AppCompatActivity + + +class PreferenceActivity : AppCompatActivity() { + override fun onCreate(savedInstanceState: Bundle?) { + super.onCreate(savedInstanceState) + setContentView(R.layout.activity_preference) + } +} diff --git a/app/src/main/res/drawable/button_switch_off.xml b/app/src/main/res/drawable/button_switch_off.xml new file mode 100644 index 0000000..4737ccb --- /dev/null +++ b/app/src/main/res/drawable/button_switch_off.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/drawable/button_switch_on.xml b/app/src/main/res/drawable/button_switch_on.xml new file mode 100644 index 0000000..e5701d1 --- /dev/null +++ b/app/src/main/res/drawable/button_switch_on.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/drawable/icon_app_info.xml b/app/src/main/res/drawable/icon_app_info.xml new file mode 100644 index 0000000..48deb66 --- /dev/null +++ b/app/src/main/res/drawable/icon_app_info.xml @@ -0,0 +1,18 @@ + + + + + + diff --git a/app/src/main/res/drawable/icon_arrow_next.xml b/app/src/main/res/drawable/icon_arrow_next.xml new file mode 100644 index 0000000..6491773 --- /dev/null +++ b/app/src/main/res/drawable/icon_arrow_next.xml @@ -0,0 +1,20 @@ + + + + diff --git a/app/src/main/res/drawable/icon_notification_black.xml b/app/src/main/res/drawable/icon_notification_black.xml new file mode 100644 index 0000000..5fd2885 --- /dev/null +++ b/app/src/main/res/drawable/icon_notification_black.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/drawable/icon_user_small.xml b/app/src/main/res/drawable/icon_user_small.xml new file mode 100644 index 0000000..d95efe3 --- /dev/null +++ b/app/src/main/res/drawable/icon_user_small.xml @@ -0,0 +1,12 @@ + + + + diff --git a/app/src/main/res/drawable/preferences_line.xml b/app/src/main/res/drawable/preferences_line.xml new file mode 100644 index 0000000..30c8f20 --- /dev/null +++ b/app/src/main/res/drawable/preferences_line.xml @@ -0,0 +1,7 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/switch_thumb.xml b/app/src/main/res/drawable/switch_thumb.xml new file mode 100644 index 0000000..da4b81b --- /dev/null +++ b/app/src/main/res/drawable/switch_thumb.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/app/src/main/res/drawable/switch_thumb_off.xml b/app/src/main/res/drawable/switch_thumb_off.xml new file mode 100644 index 0000000..e7f1e6c --- /dev/null +++ b/app/src/main/res/drawable/switch_thumb_off.xml @@ -0,0 +1,17 @@ + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/switch_thumb_on.xml b/app/src/main/res/drawable/switch_thumb_on.xml new file mode 100644 index 0000000..bc5b915 --- /dev/null +++ b/app/src/main/res/drawable/switch_thumb_on.xml @@ -0,0 +1,17 @@ + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/switch_track.xml b/app/src/main/res/drawable/switch_track.xml new file mode 100644 index 0000000..7b75790 --- /dev/null +++ b/app/src/main/res/drawable/switch_track.xml @@ -0,0 +1,5 @@ + + + + + diff --git a/app/src/main/res/drawable/switch_track_off.xml b/app/src/main/res/drawable/switch_track_off.xml new file mode 100644 index 0000000..18d88f2 --- /dev/null +++ b/app/src/main/res/drawable/switch_track_off.xml @@ -0,0 +1,15 @@ + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/switch_track_on.xml b/app/src/main/res/drawable/switch_track_on.xml new file mode 100644 index 0000000..49fd31e --- /dev/null +++ b/app/src/main/res/drawable/switch_track_on.xml @@ -0,0 +1,15 @@ + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/tab_bar.xml b/app/src/main/res/drawable/tab_bar.xml new file mode 100644 index 0000000..b7bf49e --- /dev/null +++ b/app/src/main/res/drawable/tab_bar.xml @@ -0,0 +1,7 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_preference.xml b/app/src/main/res/layout/activity_preference.xml new file mode 100644 index 0000000..df7bcb4 --- /dev/null +++ b/app/src/main/res/layout/activity_preference.xml @@ -0,0 +1,327 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file From 8e27f3ea7648e4703ad980fbafd06ef9ea7100c0 Mon Sep 17 00:00:00 2001 From: Newt Date: Sun, 6 Aug 2023 15:38:01 +0900 Subject: [PATCH 2/3] =?UTF-8?q?[Feat]=20=EC=84=A4=EC=A0=95=EC=B0=BD=20?= =?UTF-8?q?=EB=A1=9C=EA=B7=B8=EC=95=84=EC=9B=83=20=ED=9A=8C=EC=9B=90?= =?UTF-8?q?=ED=83=88=ED=87=B4=20=EA=B5=AC=ED=98=84=20=EB=B0=8F=20=EC=9E=90?= =?UTF-8?q?=EB=8F=99=EB=A1=9C=EA=B7=B8=EC=9D=B8=20=EC=B9=B4=EC=B9=B4?= =?UTF-8?q?=EC=98=A4=EB=A7=8C=20=EA=B5=AC=ED=98=84=20#9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .idea/deploymentTargetDropDown.xml | 12 ++ app/src/main/AndroidManifest.xml | 11 +- .../pinple_aos/AccessRequestActivity.kt | 2 +- .../example/pinple_aos/GlobalApplication.kt | 3 +- .../com/example/pinple_aos/LandingActivity.kt | 3 - .../com/example/pinple_aos/LoginActivity.kt | 32 +++-- .../com/example/pinple_aos/MainActivity.kt | 4 +- .../example/pinple_aos/PreferenceActivity.kt | 116 +++++++++++++++++- .../com/example/pinple_aos/ProfileActivity.kt | 2 +- .../com/example/pinple_aos/SplashActivity.kt | 52 ++++++-- .../main/res/drawable/switch_thumb_off.xml | 4 +- app/src/main/res/drawable/switch_thumb_on.xml | 4 +- .../main/res/layout/activity_preference.xml | 15 +++ 13 files changed, 217 insertions(+), 43 deletions(-) diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml index d6bdea9..3993561 100644 --- a/.idea/deploymentTargetDropDown.xml +++ b/.idea/deploymentTargetDropDown.xml @@ -1,6 +1,18 @@ + + + + + + + + + + + + diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index c42bd36..016943a 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -19,10 +19,17 @@ android:supportsRtl="true" android:theme="@style/Theme.PINPLE_AOS" tools:targetApi="31"> + + + + + android:exported="true" /> + + + + diff --git a/app/src/main/java/com/example/pinple_aos/AccessRequestActivity.kt b/app/src/main/java/com/example/pinple_aos/AccessRequestActivity.kt index 5374eb3..0026a3d 100644 --- a/app/src/main/java/com/example/pinple_aos/AccessRequestActivity.kt +++ b/app/src/main/java/com/example/pinple_aos/AccessRequestActivity.kt @@ -41,7 +41,7 @@ class AccessRequestActivity : AppCompatActivity() { val moveButton = findViewById(R.id.button_check) fun moveToAnotherPage(){ - val intent = Intent(this, PreferenceActivity::class.java) + val intent = Intent(this, LandingActivity::class.java) intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION) startActivity(intent) } diff --git a/app/src/main/java/com/example/pinple_aos/GlobalApplication.kt b/app/src/main/java/com/example/pinple_aos/GlobalApplication.kt index e93231f..76043a6 100644 --- a/app/src/main/java/com/example/pinple_aos/GlobalApplication.kt +++ b/app/src/main/java/com/example/pinple_aos/GlobalApplication.kt @@ -4,9 +4,10 @@ import android.app.Application import com.kakao.sdk.common.KakaoSdk class GlobalApplication : Application() { + var kakaolgoin: Int? = null + var googlelogin: Int? = null override fun onCreate() { super.onCreate() - KakaoSdk.init(this, "a85a328d0b6714f24de2203795161478") } } \ No newline at end of file diff --git a/app/src/main/java/com/example/pinple_aos/LandingActivity.kt b/app/src/main/java/com/example/pinple_aos/LandingActivity.kt index cdb3f91..f6d6eec 100644 --- a/app/src/main/java/com/example/pinple_aos/LandingActivity.kt +++ b/app/src/main/java/com/example/pinple_aos/LandingActivity.kt @@ -2,12 +2,9 @@ package com.example.pinple_aos import android.content.Intent import android.os.Bundle -import android.util.Log import android.widget.ImageButton import androidx.appcompat.app.AppCompatActivity -import androidx.viewpager2.widget.ViewPager2 import com.example.pinple_aos.databinding.ActivityLandingBinding -import com.kakao.sdk.common.util.Utility class LandingActivity: AppCompatActivity() { diff --git a/app/src/main/java/com/example/pinple_aos/LoginActivity.kt b/app/src/main/java/com/example/pinple_aos/LoginActivity.kt index 648f1d5..9a36fb7 100644 --- a/app/src/main/java/com/example/pinple_aos/LoginActivity.kt +++ b/app/src/main/java/com/example/pinple_aos/LoginActivity.kt @@ -1,8 +1,6 @@ package com.example.pinple_aos import android.app.Activity -import android.app.Application -import android.content.Context import android.content.Intent import androidx.appcompat.app.AppCompatActivity import android.os.Bundle @@ -13,41 +11,43 @@ import com.google.android.gms.auth.api.signin.GoogleSignIn import com.google.android.gms.auth.api.signin.GoogleSignInOptions import com.google.android.gms.common.api.ApiException import com.kakao.sdk.auth.model.OAuthToken -import com.kakao.sdk.common.KakaoSdk + import com.kakao.sdk.user.UserApiClient -class MyApplication : Application() { - override fun onCreate() { - super.onCreate() - KakaoSdk.init(this, "a85a328d0b6714f24de2203795161478") - } -} class LoginActivity : AppCompatActivity() { + + private fun moveToAnotherPage() { val intent = Intent(this, SettingNameActivity::class.java) intent.addFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION) startActivity(intent) } + + private val kakaoLoginCallback: (OAuthToken?, Throwable?) -> Unit = { token, error -> if (error != null) { // 카카오톡 로그인 실패 또는 카카오톡 미설치 UserApiClient.instance.loginWithKakaoAccount(this, callback = kakaoAccountLoginCallback) } else if (token != null) { // 카카오톡 로그인 성공 - // 추가 작업 수행 + val app = application as GlobalApplication + app.kakaolgoin = 1 moveToAnotherPage() + } } + private val kakaoAccountLoginCallback: (OAuthToken?, Throwable?) -> Unit = { token, error -> if (error != null) { // 카카오 계정 로그인 실패 Toast.makeText(this, "로그인 실패: ${error.message}", Toast.LENGTH_SHORT).show() } else if (token != null) { // 카카오 계정 로그인 성공 - // 추가 작업 수행 + val app = application as GlobalApplication + app.kakaolgoin = 1 moveToAnotherPage() } } @@ -75,7 +75,6 @@ class LoginActivity : AppCompatActivity() { googleLoginButton.setOnClickListener { signInWithGoogle() } - } private fun signInWithGoogle() { @@ -93,15 +92,12 @@ class LoginActivity : AppCompatActivity() { try { val account = task.getResult(ApiException::class.java) // 구글 로그인 성공 - // 추가 작업 수행 + val app = application as GlobalApplication + app.googlelogin = 1 moveToAnotherPage() } catch (e: ApiException) { // 구글 로그인 실패 Toast.makeText(this, "구글 로그인 실패", Toast.LENGTH_SHORT).show() } - - - - } -} \ No newline at end of file +} diff --git a/app/src/main/java/com/example/pinple_aos/MainActivity.kt b/app/src/main/java/com/example/pinple_aos/MainActivity.kt index f0370bf..a1e108b 100644 --- a/app/src/main/java/com/example/pinple_aos/MainActivity.kt +++ b/app/src/main/java/com/example/pinple_aos/MainActivity.kt @@ -1,5 +1,6 @@ package com.example.pinple_aos +import android.content.Intent import androidx.appcompat.app.AppCompatActivity import android.os.Bundle import androidx.navigation.Navigation @@ -14,6 +15,7 @@ import androidx.fragment.app.Fragment import android.util.Log import androidx.core.content.ContextCompat import android.graphics.drawable.Drawable +import android.widget.ImageButton class MainActivity : AppCompatActivity() { @@ -28,8 +30,6 @@ class MainActivity : AppCompatActivity() { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) - - bottomNavigationView = findViewById(R.id.bottomNavigationView) // MainFragment로 시작 diff --git a/app/src/main/java/com/example/pinple_aos/PreferenceActivity.kt b/app/src/main/java/com/example/pinple_aos/PreferenceActivity.kt index e2942c1..acb242a 100644 --- a/app/src/main/java/com/example/pinple_aos/PreferenceActivity.kt +++ b/app/src/main/java/com/example/pinple_aos/PreferenceActivity.kt @@ -1,12 +1,126 @@ package com.example.pinple_aos +import android.annotation.SuppressLint +import android.content.Context +import android.content.Intent import android.os.Bundle +import android.util.Log import androidx.appcompat.app.AppCompatActivity - +import android.widget.Button +import android.widget.TextView +import android.widget.Toast +import com.kakao.sdk.user.UserApiClient +import com.google.android.gms.auth.api.signin.GoogleSignIn +import com.google.android.gms.auth.api.signin.GoogleSignInOptions +import com.google.android.gms.auth.api.signin.GoogleSignInClient +import kotlin.math.log class PreferenceActivity : AppCompatActivity() { + + private lateinit var googleSignInClient: GoogleSignInClient + + + + @SuppressLint("SetTextI18n") override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_preference) + + // 구글 로그인 설정 초기화 + val gso = GoogleSignInOptions.Builder(GoogleSignInOptions.DEFAULT_SIGN_IN) + .requestEmail() + .build() + googleSignInClient = GoogleSignIn.getClient(this, gso) + + // application에서 값 가져오기 + val app = application as GlobalApplication + val kakaologinKey = app.kakaolgoin + val googleloginKey = app.googlelogin + + // 로그인 api에 따라서 텍스트 변경 + val loginTxt = findViewById(R.id.google_kakao_login_inf) + + if (kakaologinKey == 1) loginTxt.text = "(카카오로 로그인)" + else if (googleloginKey == 1) loginTxt.text = "(구글로 로그인)" + + + //api에서 계정 이메일 가져오기(구현중) + val emailTxt = findViewById(R.id.email_inf) + + if (kakaologinKey == 1) emailTxt.text = "kakao1234@gmail.com" + else if (googleloginKey == 1) emailTxt.text = "google1234@gmail.com" + + + + //로그아웃 부분 + val logoutButton = findViewById