From bb64821edf25e02d78cc426760ef55594c99d11f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=EC=A1=B0=ED=9D=AC=EC=9A=B0?=
<84004687+huiwoo-jo@users.noreply.github.com>
Date: Sun, 31 Mar 2024 11:11:40 +0900
Subject: [PATCH 1/7] =?UTF-8?q?feat=20:=20=EC=95=8C=EB=A6=BC=20=EA=B6=8C?=
=?UTF-8?q?=ED=95=9C=20=EC=84=A4=EC=A0=95=20=EB=8B=A4=EC=9D=B4=EC=96=B4?=
=?UTF-8?q?=EB=A1=9C=EA=B7=B8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/src/main/AndroidManifest.xml | 3 +-
.../ui/view/setting/dialog_permission.kt | 49 ++++++++++++++
app/src/main/res/layout/dialog_permission.xml | 64 +++++++++++++++++++
app/src/main/res/values/strings.xml | 4 ++
4 files changed, 118 insertions(+), 2 deletions(-)
create mode 100644 app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/dialog_permission.kt
create mode 100644 app/src/main/res/layout/dialog_permission.xml
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index d5dc75f8..a5336c53 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -59,8 +59,7 @@
-
+ android:windowSoftInputMode="adjustPan" />
diff --git a/app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/dialog_permission.kt b/app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/dialog_permission.kt
new file mode 100644
index 00000000..8f7fb713
--- /dev/null
+++ b/app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/dialog_permission.kt
@@ -0,0 +1,49 @@
+package com.dongyang.android.youdongknowme.ui.view.setting
+
+import android.content.Intent
+import android.graphics.Color
+import android.graphics.drawable.ColorDrawable
+import android.net.Uri
+import android.os.Bundle
+import android.provider.Settings
+import android.view.LayoutInflater
+import android.view.View
+import android.view.ViewGroup
+import androidx.fragment.app.DialogFragment
+import com.dongyang.android.youdongknowme.databinding.DialogPermissionBinding
+
+class DialogPermission(val title: String, val content: String, val pacakageName: String) : DialogFragment() {
+ private var _binding: DialogPermissionBinding? = null
+ private val binding get() = _binding!!
+
+ override fun onCreateView(inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle?): View {
+ _binding = DialogPermissionBinding.inflate(inflater, container, false)
+ val view = binding.root
+
+ // 레이아웃 배경을 투명하게
+ dialog?.window?.setBackgroundDrawable(ColorDrawable(Color.TRANSPARENT))
+
+ // 제목, 내용 설정
+ binding.customTvTitle.text = title
+ binding.customTvContent.text = content
+
+ // 취소 버튼
+ binding.customTvBtn1.setOnClickListener {
+ dismiss()
+ }
+ // 확인 버튼
+ binding.customTvBtn2.setOnClickListener {
+ val intent =
+ Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS).setData(Uri.parse("package:$pacakageName"))
+ startActivity(intent)
+ dismiss()
+ }
+
+ return view
+ }
+
+ override fun onDestroyView() {
+ super.onDestroyView()
+ _binding = null
+ }
+}
\ No newline at end of file
diff --git a/app/src/main/res/layout/dialog_permission.xml b/app/src/main/res/layout/dialog_permission.xml
new file mode 100644
index 00000000..0d3baaf1
--- /dev/null
+++ b/app/src/main/res/layout/dialog_permission.xml
@@ -0,0 +1,64 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 247da675..1840fc10 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -140,4 +140,8 @@
하나 이상의 키워드를 선택해주세요.
정확한 학과명을 기입해주세요.
+
+
+ 기기 알림이 꺼져있습니다.
+ 개인정보 보호 > 알림)을 활성화해야 공지 사항에 대한 키워드를 받을 수 있습니다.]]>
\ No newline at end of file
From 02df51a8494a2326f1723f75e5fc972345802831 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=EC=A1=B0=ED=9D=AC=EC=9A=B0?=
<84004687+huiwoo-jo@users.noreply.github.com>
Date: Sun, 31 Mar 2024 11:11:55 +0900
Subject: [PATCH 2/7] =?UTF-8?q?feat=20:=20=EC=95=8C=EB=A6=BC=20=EA=B6=8C?=
=?UTF-8?q?=ED=95=9C=20=EB=AF=B8=ED=97=88=EC=9A=A9=EC=8B=9C=20=EB=8B=A4?=
=?UTF-8?q?=EC=9D=B4=EC=96=B4=EB=A1=9C=EA=B7=B8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ui/view/setting/OnboardingPermissionActivity.kt | 11 +++++------
1 file changed, 5 insertions(+), 6 deletions(-)
diff --git a/app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/OnboardingPermissionActivity.kt b/app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/OnboardingPermissionActivity.kt
index dbef78aa..b21be503 100644
--- a/app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/OnboardingPermissionActivity.kt
+++ b/app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/OnboardingPermissionActivity.kt
@@ -1,12 +1,10 @@
package com.dongyang.android.youdongknowme.ui.view.setting
import android.Manifest
-import android.content.Intent
import android.content.pm.PackageManager
import android.content.res.ColorStateList
-import android.net.Uri
-import android.provider.Settings
import androidx.core.content.ContextCompat
+import com.dongyang.android.youdongknowme.DialogPermission
import com.dongyang.android.youdongknowme.R
import com.dongyang.android.youdongknowme.databinding.ActivityOnboardingPermissionBinding
import com.dongyang.android.youdongknowme.standard.base.BaseActivity
@@ -14,6 +12,7 @@ import com.dongyang.android.youdongknowme.ui.view.main.MainActivity
import com.dongyang.android.youdongknowme.ui.view.setting.SettingViewModel
import org.koin.androidx.viewmodel.ext.android.viewModel
+
class OnboardingPermissionActivity :
BaseActivity() {
@@ -50,10 +49,10 @@ class OnboardingPermissionActivity :
// 알림 권한이 허용 상태
setPermissionSwitch(true)
} else {
+
// 알림 권한이 미허용 상태
- val intent =
- Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS).setData(Uri.parse("package:" + this.packageName))
- startActivity(intent)
+ val dialog = DialogPermission(getString(R.string.dialog_permission_title), getString(R.string.dialog_permission_content), this.packageName)
+ dialog.show(supportFragmentManager, "CustomDialog")
}
} else {
// 온보딩 알림 스위치 비활성화
From a8d6f5f6ce561ff73e1947b3cd5c0fcdea07655e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=EC=A1=B0=ED=9D=AC=EC=9A=B0?=
<84004687+huiwoo-jo@users.noreply.github.com>
Date: Sun, 31 Mar 2024 12:00:07 +0900
Subject: [PATCH 3/7] =?UTF-8?q?feat=20:=20=EC=84=B8=ED=8C=85=ED=99=94?=
=?UTF-8?q?=EB=A9=B4=20=EA=B6=8C=ED=95=9C=20=EB=8B=A4=EC=9D=B4=EC=96=B4?=
=?UTF-8?q?=EB=A1=9C=EA=B7=B8=20(=EC=88=98=EC=A0=95=20=ED=95=84=EC=9A=94)?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../ui/view/setting/SettingFragment.kt | 26 +++++++++++++++++++
1 file changed, 26 insertions(+)
diff --git a/app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/SettingFragment.kt b/app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/SettingFragment.kt
index f0bc15e0..f782f2bc 100644
--- a/app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/SettingFragment.kt
+++ b/app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/SettingFragment.kt
@@ -1,10 +1,16 @@
package com.dongyang.android.youdongknowme.ui.view.setting
import android.app.Activity
+import android.Manifest
import android.content.Intent
+import android.content.pm.PackageManager
import android.net.Uri
import androidx.activity.result.ActivityResultLauncher
import androidx.activity.result.contract.ActivityResultContracts
+import android.os.Build
+import androidx.core.app.ActivityCompat
+import androidx.core.content.ContextCompat
+import com.dongyang.android.youdongknowme.DialogPermission
import com.dongyang.android.youdongknowme.R
import com.dongyang.android.youdongknowme.databinding.FragmentSettingBinding
import com.dongyang.android.youdongknowme.standard.base.BaseFragment
@@ -60,6 +66,7 @@ class SettingFragment : BaseFragment()
viewModel.getUserTopic()
binding.switchSettingUniversityAlarm.setOnCheckedChangeListener { compoundButton, _ ->
+ checkPermission()
if (compoundButton.isChecked) {
if (topics.isNotEmpty()) {
viewModel.updateUserTopic(topics)
@@ -70,6 +77,7 @@ class SettingFragment : BaseFragment()
}
binding.switchSettingDepartmentAlarm.setOnCheckedChangeListener { compoundButton, _ ->
+ checkPermission()
if (compoundButton.isChecked) {
if (department.isNotEmpty()) {
viewModel.updateUserDepartment(department)
@@ -111,6 +119,24 @@ class SettingFragment : BaseFragment()
}
}
+ fun checkPermission(){
+ if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) {
+ if (PackageManager.PERMISSION_DENIED == ContextCompat.checkSelfPermission(
+ requireContext(), Manifest.permission.POST_NOTIFICATIONS
+ )
+ ) {
+ // 알림 권한 설정 미허용
+ viewModel.setIsAccessDepartAlarm(false)
+ viewModel.setIsAccessUniversityAlarm(false)
+ binding.switchSettingUniversityAlarm.isChecked = false
+ binding.switchSettingDepartmentAlarm.isChecked = false
+
+ val dialog = DialogPermission(getString(R.string.dialog_permission_title), getString(R.string.dialog_permission_content), requireContext().packageName)
+ dialog.show(parentFragmentManager, "CustomDialog")
+ }
+ }
+ }
+
private fun getAppVersion(): String {
val packageManager =
requireContext().packageManager.getPackageInfo(requireContext().packageName, 0)
From 40e4dae260733683985b7e0c2b5320be953089d2 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=EC=A1=B0=ED=9D=AC=EC=9A=B0?=
<84004687+huiwoo-jo@users.noreply.github.com>
Date: Sun, 31 Mar 2024 11:11:40 +0900
Subject: [PATCH 4/7] =?UTF-8?q?feat=20:=20=EC=95=8C=EB=A6=BC=20=EA=B6=8C?=
=?UTF-8?q?=ED=95=9C=20=EC=84=A4=EC=A0=95=20=EB=8B=A4=EC=9D=B4=EC=96=B4?=
=?UTF-8?q?=EB=A1=9C=EA=B7=B8?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/src/main/AndroidManifest.xml | 5 +-
.../youdongknowme/dialog_permission.kt | 49 +++++++++++++++++++
2 files changed, 53 insertions(+), 1 deletion(-)
create mode 100644 app/src/main/java/com/dongyang/android/youdongknowme/dialog_permission.kt
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index a5336c53..36b154b9 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -22,7 +22,10 @@
android:theme="@style/Theme.YouDongKnowMe"
android:usesCleartextTraffic="true">
+
Date: Tue, 2 Apr 2024 22:58:40 +0900
Subject: [PATCH 5/7] =?UTF-8?q?fix=20:=20=EB=A6=AC=EB=B2=A0=EC=9D=B4?=
=?UTF-8?q?=EC=8A=A4=20=EA=B3=BC=EC=A0=95=20=EC=B6=A9=EB=8F=8C?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../android/youdongknowme/ui/view/setting/SettingFragment.kt | 3 +++
1 file changed, 3 insertions(+)
diff --git a/app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/SettingFragment.kt b/app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/SettingFragment.kt
index f782f2bc..8f555d03 100644
--- a/app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/SettingFragment.kt
+++ b/app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/SettingFragment.kt
@@ -2,12 +2,15 @@ package com.dongyang.android.youdongknowme.ui.view.setting
import android.app.Activity
import android.Manifest
+import android.app.Activity
import android.content.Intent
import android.content.pm.PackageManager
import android.net.Uri
import androidx.activity.result.ActivityResultLauncher
import androidx.activity.result.contract.ActivityResultContracts
import android.os.Build
+import androidx.activity.result.ActivityResultLauncher
+import androidx.activity.result.contract.ActivityResultContracts
import androidx.core.app.ActivityCompat
import androidx.core.content.ContextCompat
import com.dongyang.android.youdongknowme.DialogPermission
From 00882d84a8c8bcce50d4b4b5e1658a28e63dce16 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=EC=A1=B0=ED=9D=AC=EC=9A=B0?=
<84004687+huiwoo-jo@users.noreply.github.com>
Date: Tue, 2 Apr 2024 23:55:55 +0900
Subject: [PATCH 6/7] =?UTF-8?q?refactor=20:=20=EB=A6=AC=EB=B2=A0=EC=9D=B4?=
=?UTF-8?q?=EC=8A=A4=20=EA=B3=BC=EC=A0=95=20=EC=B6=A9=EB=8F=8C?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../android/youdongknowme/ui/view/setting/SettingFragment.kt | 4 ----
1 file changed, 4 deletions(-)
diff --git a/app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/SettingFragment.kt b/app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/SettingFragment.kt
index 8f555d03..87320d81 100644
--- a/app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/SettingFragment.kt
+++ b/app/src/main/java/com/dongyang/android/youdongknowme/ui/view/setting/SettingFragment.kt
@@ -2,16 +2,12 @@ package com.dongyang.android.youdongknowme.ui.view.setting
import android.app.Activity
import android.Manifest
-import android.app.Activity
import android.content.Intent
import android.content.pm.PackageManager
import android.net.Uri
import androidx.activity.result.ActivityResultLauncher
import androidx.activity.result.contract.ActivityResultContracts
import android.os.Build
-import androidx.activity.result.ActivityResultLauncher
-import androidx.activity.result.contract.ActivityResultContracts
-import androidx.core.app.ActivityCompat
import androidx.core.content.ContextCompat
import com.dongyang.android.youdongknowme.DialogPermission
import com.dongyang.android.youdongknowme.R
From 92e61baf4962f66321571bb90e96533d2aa740e6 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?=EC=A1=B0=ED=9D=AC=EC=9A=B0?=
<84004687+huiwoo-jo@users.noreply.github.com>
Date: Wed, 3 Apr 2024 00:06:00 +0900
Subject: [PATCH 7/7] =?UTF-8?q?refactor=20:=20=EB=A6=AC=EB=B2=A0=EC=9D=B4?=
=?UTF-8?q?=EC=8A=A4=20=EA=B3=BC=EC=A0=95=20=EC=B6=A9=EB=8F=8C=20=ED=95=B4?=
=?UTF-8?q?=EA=B2=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
app/src/main/AndroidManifest.xml | 5 +-
.../youdongknowme/dialog_permission.kt | 49 -------------------
.../setting/OnboardingPermissionActivity.kt | 2 -
.../ui/view/setting/SettingFragment.kt | 1 -
app/src/main/res/layout/dialog_permission.xml | 3 +-
5 files changed, 3 insertions(+), 57 deletions(-)
delete mode 100644 app/src/main/java/com/dongyang/android/youdongknowme/dialog_permission.kt
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 36b154b9..a5336c53 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -22,10 +22,7 @@
android:theme="@style/Theme.YouDongKnowMe"
android:usesCleartextTraffic="true">
-
+ android:backgroundTint="@color/white"
+ android:background="@drawable/bg_stroke_gray300_radius_2dp">