diff --git a/app/src/main/kotlin/bums/lunatic/launcher/LauncherActivity.kt b/app/src/main/kotlin/bums/lunatic/launcher/LauncherActivity.kt
index 4cea1805..72d5471e 100644
--- a/app/src/main/kotlin/bums/lunatic/launcher/LauncherActivity.kt
+++ b/app/src/main/kotlin/bums/lunatic/launcher/LauncherActivity.kt
@@ -68,6 +68,8 @@ import bums.lunatic.launcher.workers.TorrentService
import bums.lunatic.launcher.workers.UsageLogType
import bums.lunatic.launcher.workers.UsageUpdateType
import bums.lunatic.launcher.workers.WorkersDb
+import com.google.android.gms.wearable.MessageClient
+import com.google.android.gms.wearable.Wearable
import com.google.android.material.color.DynamicColors
import io.realm.kotlin.UpdatePolicy
import io.realm.kotlin.ext.query
@@ -635,7 +637,7 @@ open class LauncherActivity : CommonActivity() {
override fun onPause() {
super.onPause()
-
+ Wearable.getMessageClient(this).removeListener(messageListener)
}
// 위젯 선택기 실행
fun selectWidget() {
@@ -946,6 +948,23 @@ open class LauncherActivity : CommonActivity() {
field = value
}
+
+ private val messageListener = MessageClient.OnMessageReceivedListener { messageEvent ->
+ when (messageEvent.path) {
+ "/gesture/next" -> {
+ // 시계에서 오른쪽으로 휘둘렀을 때: 예) 다음 배경화면으로 변경
+ val intent = Intent("ACTION_NEXT_WALLPAPER").setPackage(packageName)
+ sendBroadcast(intent)
+ showToast("시계 제스처: 다음 배경화면")
+ }
+ "/gesture/prev" -> {
+ // 시계에서 왼쪽으로 휘둘렀을 때: 예) 앱 서랍 열기
+ showAppDrawer()
+ showToast("시계 제스처: 앱 서랍")
+ }
+ }
+ }
+
@RequiresApi(Build.VERSION_CODES.O_MR1)
override fun onResume() {
super.onResume()
@@ -956,6 +975,7 @@ open class LauncherActivity : CommonActivity() {
requestPermission()
}
resumeCount += 1
+ Wearable.getMessageClient(this).addListener(messageListener)
}
private fun openSearch() {
diff --git a/app/src/main/kotlin/bums/lunatic/launcher/player/PlayerActivity.kt b/app/src/main/kotlin/bums/lunatic/launcher/player/PlayerActivity.kt
index dcf6e610..209860c6 100644
--- a/app/src/main/kotlin/bums/lunatic/launcher/player/PlayerActivity.kt
+++ b/app/src/main/kotlin/bums/lunatic/launcher/player/PlayerActivity.kt
@@ -149,6 +149,7 @@ class PlayerActivity : AppCompatActivity(), TextureView.SurfaceTextureListener {
nativePlayer?.setSpeed(1.0f)
}
true
+
}
// 3. 왼쪽: 롱프레스 주기적 뒤로가기
diff --git a/lun_launcher/src/main/AndroidManifest.xml b/lun_launcher/src/main/AndroidManifest.xml
index 16b10e0c..8cea7c97 100644
--- a/lun_launcher/src/main/AndroidManifest.xml
+++ b/lun_launcher/src/main/AndroidManifest.xml
@@ -4,6 +4,7 @@
+
- val x = event.values[0]
+ override fun onSensorChanged(event: SensorEvent?) {
+ event?.let {
+ if (it.sensor.type == Sensor.TYPE_ACCELEROMETER) {
+ val x = it.values[0]
- // 아주 단순한 Threshold 예시 (나중에 DTW로 교체)
- if (x > 15f) { // 오른쪽으로 강하게 휘둘렀을 때
- sendGestureToLauncher("/gesture/next")
- } else if (x < -15f) {
- sendGestureToLauncher("/gesture/prev")
+ // 임계값(Threshold)을 약간 높여 오작동 방지
+ if (x > 20f) {
+ sendGestureToLauncher("/gesture/next")
+ } else if (x < -20f) {
+ sendGestureToLauncher("/gesture/prev")
+ }
}
- lastX = x
}
}
private fun sendGestureToLauncher(path: String) {