From fceffc7ae635ef3f0f50319db5046e6e7898562e Mon Sep 17 00:00:00 2001
From: ikseong00 <127182222+ikseong00@users.noreply.github.com>
Date: Mon, 1 Dec 2025 19:13:54 +0900
Subject: [PATCH 01/17] =?UTF-8?q?[feat]=20#109=20=EA=B2=80=EC=83=89=20?=
=?UTF-8?q?=ED=99=94=EB=A9=B4=EC=97=90=EC=84=9C=20=EC=8B=A0=EA=B3=A0?=
=?UTF-8?q?=ED=95=98=EA=B8=B0=20=EB=B2=84=ED=8A=BC=20=EC=A0=9C=EA=B1=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/src/main/res/layout/fragment_search.xml | 1 +
1 file changed, 1 insertion(+)
diff --git a/app/src/main/res/layout/fragment_search.xml b/app/src/main/res/layout/fragment_search.xml
index 7e744bf4..ca671dcb 100644
--- a/app/src/main/res/layout/fragment_search.xml
+++ b/app/src/main/res/layout/fragment_search.xml
@@ -61,6 +61,7 @@
android:paddingHorizontal="5dp"
android:drawablePadding="5dp"
android:text="신고하기"
+ android:visibility="invisible"
android:textAppearance="@style/TextAppearance.FindU.Head2_SB_20"
android:textColor="@color/white"
app:layout_constraintBottom_toBottomOf="parent"
From 5f3ca8928864c2e010703c37feeb593a4b1f2370 Mon Sep 17 00:00:00 2001
From: ikseong00 <127182222+ikseong00@users.noreply.github.com>
Date: Mon, 1 Dec 2025 19:14:39 +0900
Subject: [PATCH 02/17] =?UTF-8?q?[fix]=20#109=20=EA=B2=80=EC=83=89=20?=
=?UTF-8?q?=EC=83=81=EC=84=B8=20=ED=99=94=EB=A9=B4=20=EB=A0=88=EC=9D=B4?=
=?UTF-8?q?=EC=95=84=EC=9B=83=20=EC=88=98=EC=A0=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- 검색 상세(실종, 목격) 화면에서 북마크 아이콘이 보이지 않던 문제를 수정합니다.
- 댓글 버튼을 숨김 처리합니다.
- 일부 코드 순서를 정리합니다.
---
.../main/res/layout/fragment_search_detail_disappear.xml | 5 +++--
.../main/res/layout/fragment_search_detail_witness.xml | 9 +++++----
2 files changed, 8 insertions(+), 6 deletions(-)
diff --git a/app/src/main/res/layout/fragment_search_detail_disappear.xml b/app/src/main/res/layout/fragment_search_detail_disappear.xml
index e0738ef9..b3ecd115 100644
--- a/app/src/main/res/layout/fragment_search_detail_disappear.xml
+++ b/app/src/main/res/layout/fragment_search_detail_disappear.xml
@@ -55,8 +55,8 @@
android:layout_width="match_parent"
android:layout_height="303dp"
android:layout_marginTop="11dp"
- android:clipToOutline="true"
android:background="@drawable/bg_radius_20"
+ android:clipToOutline="true"
android:nestedScrollingEnabled="false"
android:paddingStart="20dp"
android:paddingEnd="20dp"
@@ -454,7 +454,8 @@
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
- android:orientation="horizontal">
+ android:orientation="horizontal"
+ android:visibility="gone">
@@ -53,10 +53,10 @@
android:id="@+id/vp_search_detail_img"
android:layout_width="match_parent"
android:layout_height="303dp"
- android:paddingStart="20dp"
android:layout_marginTop="11dp"
- android:paddingEnd="20dp"
android:nestedScrollingEnabled="false"
+ android:paddingStart="20dp"
+ android:paddingEnd="20dp"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toTopOf="parent" />
@@ -382,7 +382,8 @@
android:layout_height="match_parent"
android:layout_weight="1"
android:gravity="center"
- android:orientation="horizontal">
+ android:orientation="horizontal"
+ android:visibility="gone">
Date: Mon, 1 Dec 2025 19:20:08 +0900
Subject: [PATCH 03/17] =?UTF-8?q?[feat]=20#109=20=EB=84=A4=EC=9D=B4?=
=?UTF-8?q?=EB=B2=84=20=EC=A7=80=EB=8F=84=20=EB=A1=9C=EA=B3=A0=20=ED=81=B4?=
=?UTF-8?q?=EB=A6=AD=20=EB=B9=84=ED=99=9C=EC=84=B1=ED=99=94?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- 상세 화면에서 네이버 지도 로고 클릭을 비활성화하여 외부 앱으로 이동하는 것을 방지
---
.../ui/search/detail/SearchDisappearDetailFragment.kt | 1 +
.../ui/search/detail/SearchProtectingDetailFragment.kt | 1 +
.../presentation/ui/search/detail/SearchWitnessDetailFragment.kt | 1 +
3 files changed, 3 insertions(+)
diff --git a/app/src/main/java/com/kuit/findu/presentation/ui/search/detail/SearchDisappearDetailFragment.kt b/app/src/main/java/com/kuit/findu/presentation/ui/search/detail/SearchDisappearDetailFragment.kt
index 4e99c236..e8e81a2f 100644
--- a/app/src/main/java/com/kuit/findu/presentation/ui/search/detail/SearchDisappearDetailFragment.kt
+++ b/app/src/main/java/com/kuit/findu/presentation/ui/search/detail/SearchDisappearDetailFragment.kt
@@ -56,6 +56,7 @@ class SearchDisappearDetailFragment : Fragment() {
binding.mapView.getMapAsync { nMap ->
naverMap = nMap
+ naverMap?.uiSettings?.isLogoClickEnabled = false
pendingLocation?.let { location ->
setupMap(location.latitude, location.longitude)
}
diff --git a/app/src/main/java/com/kuit/findu/presentation/ui/search/detail/SearchProtectingDetailFragment.kt b/app/src/main/java/com/kuit/findu/presentation/ui/search/detail/SearchProtectingDetailFragment.kt
index dcf9ed54..4390ef68 100644
--- a/app/src/main/java/com/kuit/findu/presentation/ui/search/detail/SearchProtectingDetailFragment.kt
+++ b/app/src/main/java/com/kuit/findu/presentation/ui/search/detail/SearchProtectingDetailFragment.kt
@@ -57,6 +57,7 @@ class SearchProtectingDetailFragment : Fragment() {
binding.mapView.getMapAsync { nMap ->
naverMap = nMap
+ naverMap?.uiSettings?.isLogoClickEnabled = false
pendingLocation?.let { location ->
setupMap(location.latitude, location.longitude)
}
diff --git a/app/src/main/java/com/kuit/findu/presentation/ui/search/detail/SearchWitnessDetailFragment.kt b/app/src/main/java/com/kuit/findu/presentation/ui/search/detail/SearchWitnessDetailFragment.kt
index 4123c400..08f77d81 100644
--- a/app/src/main/java/com/kuit/findu/presentation/ui/search/detail/SearchWitnessDetailFragment.kt
+++ b/app/src/main/java/com/kuit/findu/presentation/ui/search/detail/SearchWitnessDetailFragment.kt
@@ -54,6 +54,7 @@ class SearchWitnessDetailFragment : Fragment() {
binding.mapView.onCreate(savedInstanceState)
binding.mapView.getMapAsync { nMap ->
naverMap = nMap
+ naverMap?.uiSettings?.isLogoClickEnabled = false
pendingLocation?.let { location ->
setupMap(location.latitude, location.longitude)
}
From fdc30fcc67fba2270e74f84ae575f41b2941e70c Mon Sep 17 00:00:00 2001
From: ikseong00 <127182222+ikseong00@users.noreply.github.com>
Date: Mon, 1 Dec 2025 19:26:52 +0900
Subject: [PATCH 04/17] =?UTF-8?q?[feat]=20#109=20=EC=95=8C=EB=9E=8C=20?=
=?UTF-8?q?=EC=84=A4=EC=A0=95=20=EC=8A=A4=ED=8E=98=EC=9D=B4=EC=8A=A4=20?=
=?UTF-8?q?=EC=A0=9C=EA=B1=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../findu/presentation/ui/my/MyFragment.kt | 8 +--
app/src/main/res/layout/fragment_my.xml | 52 +++++++++----------
2 files changed, 30 insertions(+), 30 deletions(-)
diff --git a/app/src/main/java/com/kuit/findu/presentation/ui/my/MyFragment.kt b/app/src/main/java/com/kuit/findu/presentation/ui/my/MyFragment.kt
index decd0d2a..da8e3bca 100644
--- a/app/src/main/java/com/kuit/findu/presentation/ui/my/MyFragment.kt
+++ b/app/src/main/java/com/kuit/findu/presentation/ui/my/MyFragment.kt
@@ -186,7 +186,7 @@ class MyFragment : Fragment() {
// clMyAlarmSetting.setOnClickListener {
// myViewModel.toggleAlarmSetting()
// }
- binding.clMyAlarmSetting.isEnabled = false
+// binding.clMyAlarmSetting.isEnabled = false
setupVersion()
}
@@ -284,9 +284,9 @@ class MyFragment : Fragment() {
}
launch {
myViewModel.alarmEnabled.collect { enabled ->
- binding.ivMyAlarmIcon.setImageResource(
- if (enabled) R.drawable.img_my_alarm_on else R.drawable.img_my_alarm_off
- )
+// binding.ivMyAlarmIcon.setImageResource(
+// if (enabled) R.drawable.img_my_alarm_on else R.drawable.img_my_alarm_off
+// )
}
}
}
diff --git a/app/src/main/res/layout/fragment_my.xml b/app/src/main/res/layout/fragment_my.xml
index 77b504f5..65769b03 100644
--- a/app/src/main/res/layout/fragment_my.xml
+++ b/app/src/main/res/layout/fragment_my.xml
@@ -265,32 +265,32 @@
android:textAppearance="@style/TextAppearance.FindU.Body2_SB_14"
android:textColor="@color/gray4" />
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
Date: Mon, 1 Dec 2025 19:49:24 +0900
Subject: [PATCH 05/17] =?UTF-8?q?[feat]=20#109=20=EA=B2=8C=EC=8A=A4?=
=?UTF-8?q?=ED=8A=B8=20=EC=9C=A0=EC=A0=80=EC=9D=BC=20=EA=B2=BD=EC=9A=B0=20?=
=?UTF-8?q?=EB=A7=88=EC=9D=B4=ED=8E=98=EC=9D=B4=EC=A7=80=20=EC=B2=98?=
=?UTF-8?q?=EB=A6=AC?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- 게스트 유저일 경우 닉네임 수정, 로그아웃, 회원탈퇴 버튼을 숨김
- 게스트 유저일 경우 '로그인 화면으로 이동' 버튼을 표시하고, 클릭 시 로그인 화면으로 이동 기능 구현
---
.../findu/presentation/ui/my/MyFragment.kt | 15 +++++++++++++++
app/src/main/res/layout/fragment_my.xml | 18 ++++++++++++++++++
2 files changed, 33 insertions(+)
diff --git a/app/src/main/java/com/kuit/findu/presentation/ui/my/MyFragment.kt b/app/src/main/java/com/kuit/findu/presentation/ui/my/MyFragment.kt
index da8e3bca..5db589ab 100644
--- a/app/src/main/java/com/kuit/findu/presentation/ui/my/MyFragment.kt
+++ b/app/src/main/java/com/kuit/findu/presentation/ui/my/MyFragment.kt
@@ -188,6 +188,13 @@ class MyFragment : Fragment() {
// }
// binding.clMyAlarmSetting.isEnabled = false
+ clMyGotoLogin.setOnClickListener {
+ with(requireActivity()) {
+ startActivity(Intent(requireContext(), LoginActivity::class.java))
+ finish()
+ }
+ }
+
setupVersion()
}
}
@@ -250,6 +257,14 @@ class MyFragment : Fragment() {
.load(type.drawableRes)
.into(binding.ivMyIllust)
}
+
+ if(it.nickname == "게스트") {
+ binding.ivMyEditPen.visibility = View.GONE
+ binding.clMyWithdrawal.visibility = View.GONE
+ binding.clMyLogout.visibility = View.GONE
+ } else {
+ binding.clMyGotoLogin.visibility = View.GONE
+ }
}
}
}
diff --git a/app/src/main/res/layout/fragment_my.xml b/app/src/main/res/layout/fragment_my.xml
index 65769b03..90a02d84 100644
--- a/app/src/main/res/layout/fragment_my.xml
+++ b/app/src/main/res/layout/fragment_my.xml
@@ -418,6 +418,24 @@
+
+
+
+
+
+
Date: Mon, 1 Dec 2025 19:55:22 +0900
Subject: [PATCH 06/17] =?UTF-8?q?[feat]=20#109=20AD=5FID=20=EA=B6=8C?=
=?UTF-8?q?=ED=95=9C=20=EC=B6=94=EA=B0=80?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/src/main/AndroidManifest.xml | 1 +
1 file changed, 1 insertion(+)
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index edba50f6..66ad436c 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -11,6 +11,7 @@
+
From 4148104607768cef1af48018110c53584416212f Mon Sep 17 00:00:00 2001
From: ikseong00 <127182222+ikseong00@users.noreply.github.com>
Date: Mon, 1 Dec 2025 19:57:04 +0900
Subject: [PATCH 07/17] =?UTF-8?q?[chore]=20#109=20=EC=95=B1=20=EB=B2=84?=
=?UTF-8?q?=EC=A0=84=20=EC=97=85=EB=8D=B0=EC=9D=B4=ED=8A=B8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/build.gradle.kts | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 76f37af5..f9a2da77 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -24,8 +24,8 @@ android {
applicationId = "com.kuit.findu"
minSdk = 28
targetSdk = 35
- versionCode = 5
- versionName = "1.0.4"
+ versionCode = 8
+ versionName = "1.0.7"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
buildConfigField("String", "GPT_KEY", properties["GPT_KEY"].toString())
From 5d698e23b640d13ca9d5ec9df220b73350972aab Mon Sep 17 00:00:00 2001
From: ikseong00 <127182222+ikseong00@users.noreply.github.com>
Date: Mon, 1 Dec 2025 23:33:10 +0900
Subject: [PATCH 08/17] =?UTF-8?q?[feat]=20#109=20401=20=EC=97=90=EB=9F=AC?=
=?UTF-8?q?=20=EC=A0=84=EC=9A=A9=20=EC=98=88=EC=99=B8=20=ED=81=B4=EB=9E=98?=
=?UTF-8?q?=EC=8A=A4=20=EA=B5=AC=ED=98=84?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../com/kuit/findu/data/dataremote/util/ApiResponseHandler.kt | 4 ++++
.../java/com/kuit/findu/data/dataremote/util/Exceptions.kt | 3 +++
2 files changed, 7 insertions(+)
create mode 100644 app/src/main/java/com/kuit/findu/data/dataremote/util/Exceptions.kt
diff --git a/app/src/main/java/com/kuit/findu/data/dataremote/util/ApiResponseHandler.kt b/app/src/main/java/com/kuit/findu/data/dataremote/util/ApiResponseHandler.kt
index 80c14513..91d6e836 100644
--- a/app/src/main/java/com/kuit/findu/data/dataremote/util/ApiResponseHandler.kt
+++ b/app/src/main/java/com/kuit/findu/data/dataremote/util/ApiResponseHandler.kt
@@ -9,6 +9,10 @@ fun BaseResponse.handleBaseResponse(): Result =
Result.success(this.data)
}
+ 401 -> {
+ Result.failure(AuthenticationException())
+ }
+
in 400..499 -> { // 클라이언트 에러
Result.failure(Exception("Client error : ${this.message}"))
}
diff --git a/app/src/main/java/com/kuit/findu/data/dataremote/util/Exceptions.kt b/app/src/main/java/com/kuit/findu/data/dataremote/util/Exceptions.kt
new file mode 100644
index 00000000..1483eda3
--- /dev/null
+++ b/app/src/main/java/com/kuit/findu/data/dataremote/util/Exceptions.kt
@@ -0,0 +1,3 @@
+package com.kuit.findu.data.dataremote.util
+
+class AuthenticationException: Exception()
\ No newline at end of file
From 53a01df017f2228744f71eafa2e5e2469e8158ef Mon Sep 17 00:00:00 2001
From: ikseong00 <127182222+ikseong00@users.noreply.github.com>
Date: Mon, 1 Dec 2025 23:33:37 +0900
Subject: [PATCH 09/17] =?UTF-8?q?[feat]=20#109=20=ED=99=88=20=EB=8D=B0?=
=?UTF-8?q?=EC=9D=B4=ED=84=B0=20=EB=A1=9C=EB=94=A9=20401=20=EC=97=90?=
=?UTF-8?q?=EB=9F=AC=20=EB=B0=9C=EC=83=9D=20=EC=8B=9C=20=EB=A1=9C=EA=B7=B8?=
=?UTF-8?q?=EC=9D=B8=20=ED=99=94=EB=A9=B4=EC=9C=BC=EB=A1=9C=20=EC=9D=B4?=
=?UTF-8?q?=EB=8F=99=20(=EC=9E=84=EC=8B=9C)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../com/kuit/findu/presentation/ui/home/HomeFragment.kt | 8 ++++++++
.../findu/presentation/ui/home/viewmodel/HomeViewModel.kt | 6 ++++++
2 files changed, 14 insertions(+)
diff --git a/app/src/main/java/com/kuit/findu/presentation/ui/home/HomeFragment.kt b/app/src/main/java/com/kuit/findu/presentation/ui/home/HomeFragment.kt
index a5f2d68a..09fc114f 100644
--- a/app/src/main/java/com/kuit/findu/presentation/ui/home/HomeFragment.kt
+++ b/app/src/main/java/com/kuit/findu/presentation/ui/home/HomeFragment.kt
@@ -24,6 +24,7 @@ import com.kuit.findu.presentation.ui.home.composeview.HomeScreen
import com.kuit.findu.presentation.ui.home.viewmodel.HomeUiEffect
import com.kuit.findu.presentation.ui.home.viewmodel.HomeUiEvent
import com.kuit.findu.presentation.ui.home.viewmodel.HomeViewModel
+import com.kuit.findu.presentation.ui.login.LoginActivity
import com.kuit.findu.presentation.util.permission.LocationPermissionManager.hasLocationPermission
import dagger.hilt.android.AndroidEntryPoint
@@ -89,11 +90,13 @@ class HomeFragment : Fragment() {
is HomeUiEffect.NavigateToFindReport -> {
navigateToFindReport()
}
+
is HomeUiEffect.NavigateToLostReport -> {
navigateToLostReport()
}
is HomeUiEffect.Dial -> call120()
+ is HomeUiEffect.NavigateToLogin -> startLoginActivity()
}
}
}
@@ -173,6 +176,11 @@ class HomeFragment : Fragment() {
)
}
+ private fun startLoginActivity() {
+ val intent = Intent(requireContext(), LoginActivity::class.java)
+ startActivity(intent)
+ requireActivity().finish()
+ }
private fun navigateToProtectDetail(id: String, tag: String, name: String) {
when (tag) {
diff --git a/app/src/main/java/com/kuit/findu/presentation/ui/home/viewmodel/HomeViewModel.kt b/app/src/main/java/com/kuit/findu/presentation/ui/home/viewmodel/HomeViewModel.kt
index 47c5f3c9..c1923cb5 100644
--- a/app/src/main/java/com/kuit/findu/presentation/ui/home/viewmodel/HomeViewModel.kt
+++ b/app/src/main/java/com/kuit/findu/presentation/ui/home/viewmodel/HomeViewModel.kt
@@ -2,6 +2,7 @@ package com.kuit.findu.presentation.ui.home.viewmodel
import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
+import com.kuit.findu.data.dataremote.util.AuthenticationException
import com.kuit.findu.domain.model.HomeData
import com.kuit.findu.domain.model.ProtectAnimal
import com.kuit.findu.domain.model.ReportAnimal
@@ -78,6 +79,7 @@ sealed class HomeUiEffect {
data class ShowToast(val message: String) : HomeUiEffect()
data object Dial : HomeUiEffect()
+ data object NavigateToLogin : HomeUiEffect()
}
@HiltViewModel
@@ -140,6 +142,10 @@ class HomeViewModel @Inject constructor(
}
},
onFailure = { error ->
+ if(error is AuthenticationException) {
+ _uiEffect.send(HomeUiEffect.NavigateToLogin)
+ return@fold
+ }
_uiState.update {
it.copy(
loadState = LoadState.Error,
From 72dc1f7ef20bbf1fcb9eade001d496df8b6bd7b6 Mon Sep 17 00:00:00 2001
From: ikseong00 <127182222+ikseong00@users.noreply.github.com>
Date: Tue, 2 Dec 2025 13:58:29 +0900
Subject: [PATCH 10/17] =?UTF-8?q?[fix]=20#109=20401=20=EC=97=90=EB=9F=AC?=
=?UTF-8?q?=20=ED=95=B8=EB=93=A4=EB=A7=81=20=EB=A1=9C=EC=A7=81=20=EC=88=98?=
=?UTF-8?q?=EC=A0=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- API 401 에러 발생 시 로그인 화면으로 이동하도록 수정
- `AuthInterceptor`에서 401 에러 테스트를 위해 임시로 토큰 앞에 "1"을 추가
---
.../com/kuit/findu/data/dataremote/util/ApiResponseHandler.kt | 4 ----
.../com/kuit/findu/data/dataremote/util/AuthInterceptor.kt | 2 +-
.../findu/presentation/ui/home/viewmodel/HomeViewModel.kt | 4 +++-
3 files changed, 4 insertions(+), 6 deletions(-)
diff --git a/app/src/main/java/com/kuit/findu/data/dataremote/util/ApiResponseHandler.kt b/app/src/main/java/com/kuit/findu/data/dataremote/util/ApiResponseHandler.kt
index 91d6e836..80c14513 100644
--- a/app/src/main/java/com/kuit/findu/data/dataremote/util/ApiResponseHandler.kt
+++ b/app/src/main/java/com/kuit/findu/data/dataremote/util/ApiResponseHandler.kt
@@ -9,10 +9,6 @@ fun BaseResponse.handleBaseResponse(): Result =
Result.success(this.data)
}
- 401 -> {
- Result.failure(AuthenticationException())
- }
-
in 400..499 -> { // 클라이언트 에러
Result.failure(Exception("Client error : ${this.message}"))
}
diff --git a/app/src/main/java/com/kuit/findu/data/dataremote/util/AuthInterceptor.kt b/app/src/main/java/com/kuit/findu/data/dataremote/util/AuthInterceptor.kt
index 1add4279..3a9552c3 100644
--- a/app/src/main/java/com/kuit/findu/data/dataremote/util/AuthInterceptor.kt
+++ b/app/src/main/java/com/kuit/findu/data/dataremote/util/AuthInterceptor.kt
@@ -24,7 +24,7 @@ class AuthInterceptor @Inject constructor(
private fun addAuthorizationHeader(request: Request): Request =
request.newBuilder()
- .addHeader(AUTHORIZATION, "$BEARER ${tokenLocalDataSource.accessToken}")
+ .addHeader(AUTHORIZATION, "$BEARER 1${tokenLocalDataSource.accessToken}")
.build()
companion object {
diff --git a/app/src/main/java/com/kuit/findu/presentation/ui/home/viewmodel/HomeViewModel.kt b/app/src/main/java/com/kuit/findu/presentation/ui/home/viewmodel/HomeViewModel.kt
index c1923cb5..ce7d67dc 100644
--- a/app/src/main/java/com/kuit/findu/presentation/ui/home/viewmodel/HomeViewModel.kt
+++ b/app/src/main/java/com/kuit/findu/presentation/ui/home/viewmodel/HomeViewModel.kt
@@ -1,5 +1,6 @@
package com.kuit.findu.presentation.ui.home.viewmodel
+import android.util.Log
import androidx.lifecycle.ViewModel
import androidx.lifecycle.viewModelScope
import com.kuit.findu.data.dataremote.util.AuthenticationException
@@ -142,7 +143,8 @@ class HomeViewModel @Inject constructor(
}
},
onFailure = { error ->
- if(error is AuthenticationException) {
+ Log.e("HomeViewModel", "loadHomeData: $error")
+ if(error.message?.contains("401") == true) {
_uiEffect.send(HomeUiEffect.NavigateToLogin)
return@fold
}
From 6fc3cad73d4b721ed7ca09b45cf5cc7f1ebc7097 Mon Sep 17 00:00:00 2001
From: ikseong00 <127182222+ikseong00@users.noreply.github.com>
Date: Tue, 2 Dec 2025 13:58:36 +0900
Subject: [PATCH 11/17] =?UTF-8?q?[style]=20#107=20=EB=A7=88=EC=9D=B4?=
=?UTF-8?q?=ED=8E=98=EC=9D=B4=EC=A7=80=20=ED=94=84=EB=A1=9C=ED=95=84=20?=
=?UTF-8?q?=EC=9D=B4=EB=AF=B8=EC=A7=80=20=EB=8B=A4=EC=9D=B4=EC=96=BC?=
=?UTF-8?q?=EB=A1=9C=EA=B7=B8=20UI=20=EC=88=98=EC=A0=95?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- 다이얼로그 좌우 패딩 값 수정
- 프로필 이미지 변경 버튼의 너비를 `match_parent`로 변경
---
app/src/main/res/layout/dialog_my_profile_image.xml | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/app/src/main/res/layout/dialog_my_profile_image.xml b/app/src/main/res/layout/dialog_my_profile_image.xml
index 0bffe275..6229e7c1 100644
--- a/app/src/main/res/layout/dialog_my_profile_image.xml
+++ b/app/src/main/res/layout/dialog_my_profile_image.xml
@@ -4,7 +4,8 @@
android:layout_width="320dp"
android:layout_height="wrap_content"
android:background="@drawable/bg_my_dialog"
- android:padding="20dp">
+ android:paddingHorizontal="24dp"
+ android:paddingVertical="20dp">
Date: Tue, 2 Dec 2025 14:50:12 +0900
Subject: [PATCH 12/17] =?UTF-8?q?[fix]=20#107=20401=20=EC=97=90=EB=9F=AC?=
=?UTF-8?q?=20=EC=8B=9C=20AuthAuthenticator=20=EB=A5=BC=20=ED=86=B5?=
=?UTF-8?q?=ED=95=B4=20=EA=B4=80=EB=A6=AC=ED=95=98=EB=8F=84=EB=A1=9D=20?=
=?UTF-8?q?=EC=88=98=EC=A0=95=20(=EC=9E=84=EC=8B=9C)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../data/dataremote/util/AuthAuthenticator.kt | 34 +++++++++++++++++++
.../data/dataremote/util/AuthInterceptor.kt | 2 +-
.../java/com/kuit/findu/di/NetworkModule.kt | 14 +++++++-
3 files changed, 48 insertions(+), 2 deletions(-)
create mode 100644 app/src/main/java/com/kuit/findu/data/dataremote/util/AuthAuthenticator.kt
diff --git a/app/src/main/java/com/kuit/findu/data/dataremote/util/AuthAuthenticator.kt b/app/src/main/java/com/kuit/findu/data/dataremote/util/AuthAuthenticator.kt
new file mode 100644
index 00000000..63d2f5b9
--- /dev/null
+++ b/app/src/main/java/com/kuit/findu/data/dataremote/util/AuthAuthenticator.kt
@@ -0,0 +1,34 @@
+package com.kuit.findu.data.dataremote.util
+
+import android.content.Context
+import android.content.Intent
+import com.kuit.findu.data.datalocal.datasource.TokenLocalDataSource
+import com.kuit.findu.presentation.ui.login.LoginActivity
+import dagger.hilt.android.qualifiers.ApplicationContext
+import okhttp3.Interceptor
+import okhttp3.Response
+import javax.inject.Inject
+
+class AuthAuthenticator @Inject constructor(
+ private val tokenLocalDataSource: TokenLocalDataSource,
+ @ApplicationContext private val context: Context
+) : Interceptor {
+ override fun intercept(chain: Interceptor.Chain): Response {
+ val request = chain.request()
+ val response = chain.proceed(request)
+
+ // 401 Unauthorized 에러 감지
+ if (response.code == 401) {
+ // 토큰 삭제
+ tokenLocalDataSource.clearToken()
+
+ // 로그인 화면으로 이동
+ val intent = Intent(context, LoginActivity::class.java).apply {
+ flags = Intent.FLAG_ACTIVITY_NEW_TASK or Intent.FLAG_ACTIVITY_CLEAR_TASK
+ }
+ context.startActivity(intent)
+ }
+
+ return response
+ }
+}
diff --git a/app/src/main/java/com/kuit/findu/data/dataremote/util/AuthInterceptor.kt b/app/src/main/java/com/kuit/findu/data/dataremote/util/AuthInterceptor.kt
index 3a9552c3..1add4279 100644
--- a/app/src/main/java/com/kuit/findu/data/dataremote/util/AuthInterceptor.kt
+++ b/app/src/main/java/com/kuit/findu/data/dataremote/util/AuthInterceptor.kt
@@ -24,7 +24,7 @@ class AuthInterceptor @Inject constructor(
private fun addAuthorizationHeader(request: Request): Request =
request.newBuilder()
- .addHeader(AUTHORIZATION, "$BEARER 1${tokenLocalDataSource.accessToken}")
+ .addHeader(AUTHORIZATION, "$BEARER ${tokenLocalDataSource.accessToken}")
.build()
companion object {
diff --git a/app/src/main/java/com/kuit/findu/di/NetworkModule.kt b/app/src/main/java/com/kuit/findu/di/NetworkModule.kt
index 034b54f6..daf0b3d9 100644
--- a/app/src/main/java/com/kuit/findu/di/NetworkModule.kt
+++ b/app/src/main/java/com/kuit/findu/di/NetworkModule.kt
@@ -6,6 +6,7 @@ import com.jakewharton.retrofit2.converter.kotlinx.serialization.asConverterFact
import com.kuit.findu.BuildConfig
import com.kuit.findu.BuildConfig.DEBUG
import com.kuit.findu.data.datalocal.datasource.TokenLocalDataSource
+import com.kuit.findu.data.dataremote.util.AuthAuthenticator
import com.kuit.findu.data.dataremote.util.AuthInterceptor
import com.kuit.findu.data.dataremote.util.ErrorTrackingInterceptor
import dagger.Module
@@ -42,15 +43,17 @@ object NetworkModule {
fun providesOkHttpClient(
loggingInterceptor: HttpLoggingInterceptor,
authInterceptor: AuthInterceptor,
+ authAuthenticator: AuthAuthenticator,
errorTrackingInterceptor: ErrorTrackingInterceptor,
): OkHttpClient =
OkHttpClient.Builder().apply {
connectTimeout(10, TimeUnit.SECONDS)
writeTimeout(10, TimeUnit.SECONDS)
readTimeout(10, TimeUnit.SECONDS)
+ addInterceptor(authInterceptor)
if (DEBUG) addInterceptor(loggingInterceptor)
else addInterceptor(errorTrackingInterceptor)
- addInterceptor(authInterceptor)
+ addInterceptor(authAuthenticator)
}.build()
@Provides
@@ -69,6 +72,15 @@ object NetworkModule {
return AuthInterceptor(tokenLocalDataSource, context)
}
+ @Provides
+ @Singleton
+ fun provideAuthAuthenticator(
+ tokenLocalDataSource: TokenLocalDataSource,
+ @ApplicationContext context: Context,
+ ): AuthAuthenticator {
+ return AuthAuthenticator(tokenLocalDataSource, context)
+ }
+
@Provides
@Singleton
fun provideErrorTrackingInterceptor(
From 9de5fd6bf0dd51f880ac8e8c590c0a02e6b9482b Mon Sep 17 00:00:00 2001
From: ikseong00 <127182222+ikseong00@users.noreply.github.com>
Date: Wed, 3 Dec 2025 21:10:32 +0900
Subject: [PATCH 13/17] =?UTF-8?q?[chore]=20#107=20=EC=95=B1=20=EB=B2=84?=
=?UTF-8?q?=EC=A0=84=20=EC=97=85=EB=8D=B0=EC=9D=B4=ED=8A=B8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- versionCode: 8 → 9
- versionName: 1.0.7 → 1.0.8
---
app/build.gradle.kts | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index f9a2da77..50b4409b 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -24,8 +24,8 @@ android {
applicationId = "com.kuit.findu"
minSdk = 28
targetSdk = 35
- versionCode = 8
- versionName = "1.0.7"
+ versionCode = 9
+ versionName = "1.0.8"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
buildConfigField("String", "GPT_KEY", properties["GPT_KEY"].toString())
From c132472b599904781dd0d2433511038fb32ae9d0 Mon Sep 17 00:00:00 2001
From: ikseong00 <127182222+ikseong00@users.noreply.github.com>
Date: Thu, 11 Dec 2025 01:27:07 +0900
Subject: [PATCH 14/17] =?UTF-8?q?[feat]=20=EC=95=B1=20=EC=9D=B4=EB=A6=84?=
=?UTF-8?q?=20=EB=B3=80=EA=B2=BD=20=EB=B0=8F=20=EB=A7=88=EC=9D=B4=ED=8E=98?=
=?UTF-8?q?=EC=9D=B4=EC=A7=80=20=EC=84=A4=EC=A0=95=20=EB=B2=84=ED=8A=BC=20?=
=?UTF-8?q?=EC=88=A8=EA=B9=80=20=EC=B2=98=EB=A6=AC?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- 앱 이름을 "FindU"에서 "찾아유"로 변경
- 마이페이지의 설정 버튼을 보이지 않도록 수정
---
app/src/main/AndroidManifest.xml | 3 ++-
app/src/main/res/layout/fragment_my.xml | 1 +
app/src/main/res/values/strings.xml | 2 +-
3 files changed, 4 insertions(+), 2 deletions(-)
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 66ad436c..4f09ee84 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -11,7 +11,8 @@
-
+
diff --git a/app/src/main/res/layout/fragment_my.xml b/app/src/main/res/layout/fragment_my.xml
index 90a02d84..a4810c31 100644
--- a/app/src/main/res/layout/fragment_my.xml
+++ b/app/src/main/res/layout/fragment_my.xml
@@ -116,6 +116,7 @@
android:layout_height="wrap_content"
android:layout_marginTop="22dp"
android:layout_marginEnd="20dp"
+ android:visibility="invisible"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintTop_toTopOf="parent">
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 1008fb72..f55120c8 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -1,5 +1,5 @@
- FindU
+ 찾아유
유기동물 관심의 시작,
From 58655d6ccaa00d9024edd96fdf08f377f0f1b06e Mon Sep 17 00:00:00 2001
From: ikseong00 <127182222+ikseong00@users.noreply.github.com>
Date: Thu, 11 Dec 2025 01:27:16 +0900
Subject: [PATCH 15/17] =?UTF-8?q?[build]=20#107=20=EC=95=B1=20=EB=B2=84?=
=?UTF-8?q?=EC=A0=84=20=EC=97=85=EB=8D=B0=EC=9D=B4=ED=8A=B8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- versionCode: 9 -> 11
- versionName: "1.0.8" -> "1.0.10"
---
app/build.gradle.kts | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 50b4409b..765063c6 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -24,8 +24,8 @@ android {
applicationId = "com.kuit.findu"
minSdk = 28
targetSdk = 35
- versionCode = 9
- versionName = "1.0.8"
+ versionCode = 11
+ versionName = "1.0.10"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
buildConfigField("String", "GPT_KEY", properties["GPT_KEY"].toString())
From 09f786b7b9c77bb2886f1ca5b4f93adb88d6dfe7 Mon Sep 17 00:00:00 2001
From: ikseong00 <127182222+ikseong00@users.noreply.github.com>
Date: Thu, 11 Dec 2025 17:50:14 +0900
Subject: [PATCH 16/17] =?UTF-8?q?[fix]=20=EB=A1=9C=EA=B7=B8=EC=9D=B8=20?=
=?UTF-8?q?=ED=99=94=EB=A9=B4=EC=97=90=EC=84=9C=20=EC=B9=B4=EC=B9=B4?=
=?UTF-8?q?=EC=98=A4=20=EB=A1=9C=EA=B7=B8=EC=9D=B8=20=EB=B2=84=ED=8A=BC=20?=
=?UTF-8?q?=EC=A0=9C=EA=B1=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ui/login/composeview/LoginScreen.kt | 15 ++++++++-------
1 file changed, 8 insertions(+), 7 deletions(-)
diff --git a/app/src/main/java/com/kuit/findu/presentation/ui/login/composeview/LoginScreen.kt b/app/src/main/java/com/kuit/findu/presentation/ui/login/composeview/LoginScreen.kt
index 32caac6c..b3ea8688 100644
--- a/app/src/main/java/com/kuit/findu/presentation/ui/login/composeview/LoginScreen.kt
+++ b/app/src/main/java/com/kuit/findu/presentation/ui/login/composeview/LoginScreen.kt
@@ -28,7 +28,7 @@ import com.kuit.findu.ui.theme.FindUTheme
fun LoginScreen(
kakaoLoginButtonClicked: () -> Unit,
withoutSignUpButtonClicked: () -> Unit,
- modifier: Modifier = Modifier
+ modifier: Modifier = Modifier,
) {
Column(
modifier = modifier
@@ -66,12 +66,13 @@ fun LoginScreen(
tint = Color.Unspecified,
)
Spacer(modifier = Modifier.height(53.dp))
- Icon(
- painter = painterResource(R.drawable.img_kakao_login),
- contentDescription = null,
- modifier = Modifier.noRippleClickable(kakaoLoginButtonClicked),
- tint = Color.Unspecified
- )
+// Icon(
+// painter = painterResource(R.drawable.img_kakao_login),
+// contentDescription = null,
+// modifier = Modifier.noRippleClickable(),
+// tint = Color.Unspecified
+// )
+ Spacer(modifier = Modifier.height(50.dp))
Spacer(modifier = Modifier.height(15.dp))
Text(
text = stringResource(R.string.login_without_signup),
From f2bff2439de71f4cd7cb834c1b0c4c1a2baceba3 Mon Sep 17 00:00:00 2001
From: ikseong00 <127182222+ikseong00@users.noreply.github.com>
Date: Thu, 11 Dec 2025 17:50:19 +0900
Subject: [PATCH 17/17] =?UTF-8?q?[chore]=20#107=20=EC=95=B1=20=EB=B2=84?=
=?UTF-8?q?=EC=A0=84=20=EC=97=85=EB=8D=B0=EC=9D=B4=ED=8A=B8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- 앱 버전을 1.0.10에서 1.0.11로 업데이트
- versionCode를 11에서 12로 업데이트
---
app/build.gradle.kts | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/app/build.gradle.kts b/app/build.gradle.kts
index 765063c6..15965b16 100644
--- a/app/build.gradle.kts
+++ b/app/build.gradle.kts
@@ -24,8 +24,8 @@ android {
applicationId = "com.kuit.findu"
minSdk = 28
targetSdk = 35
- versionCode = 11
- versionName = "1.0.10"
+ versionCode = 12
+ versionName = "1.0.11"
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
buildConfigField("String", "GPT_KEY", properties["GPT_KEY"].toString())