Skip to content

Commit

Permalink
[release]: add lock activity
Browse files Browse the repository at this point in the history
  • Loading branch information
kez-lab committed Jan 7, 2024
1 parent 1dc6842 commit 9f57cb8
Show file tree
Hide file tree
Showing 7 changed files with 70 additions and 4 deletions.
17 changes: 17 additions & 0 deletions app/src/main/java/com/hmh/hamyeonham/di/NavigatorModule.kt
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
package com.hmh.hamyeonham.di

import com.hmh.hamyeonham.common.navigation.NavigationProvider
import com.hmh.hamyeonham.navigation.DefaultNavigationProvider
import dagger.Binds
import dagger.Module
import dagger.hilt.InstallIn
import dagger.hilt.components.SingletonComponent
import javax.inject.Singleton

@Module
@InstallIn(SingletonComponent::class)
interface NavigatorModule {
@Binds
@Singleton
fun bindNavigator(navigator: DefaultNavigationProvider): NavigationProvider
}
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ import com.hmh.hamyeonham.statistics.StaticsActivity
import dagger.hilt.android.qualifiers.ApplicationContext
import javax.inject.Inject

class DefaultNavigation @Inject constructor(
class DefaultNavigationProvider @Inject constructor(
@ApplicationContext private val context: Context
) : NavigationProvider {
override fun toOnboarding(): Intent {
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
package com.hmh.hamyeonham.feature.login

import android.os.Bundle
import android.util.Log
import androidx.activity.viewModels
import androidx.appcompat.app.AppCompatActivity
import com.hmh.hamyeonham.common.context.toast
Expand All @@ -11,8 +12,10 @@ import com.kakao.sdk.auth.model.OAuthToken
import com.kakao.sdk.common.model.ClientError
import com.kakao.sdk.common.model.ClientErrorCause
import com.kakao.sdk.user.UserApiClient
import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject

@AndroidEntryPoint
class LoginActivity : AppCompatActivity() {
private lateinit var binding: ActivityLoginBinding

Expand Down
5 changes: 5 additions & 0 deletions feature/onboarding/src/main/AndroidManifest.xml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,7 @@
<uses-permission
android:name="android.permission.PACKAGE_USAGE_STATS"
tools:ignore="ProtectedPermissions" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />

<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />

Expand All @@ -25,5 +26,9 @@
android:name="android.accessibilityservice"
android:resource="@xml/accessibility_service_config" />
</service>

<activity
android:name=".LockActivity"
android:exported="true" />
</application>
</manifest>
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
package com.hmh.hamyeonham.feature.onboarding

import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
import com.hmh.hamyeonham.common.context.toast
import com.hmh.hamyeonham.common.view.viewBinding
import com.hmh.hamyeonham.feature.onboarding.databinding.ActivityLockBinding

class LockActivity : AppCompatActivity() {
private val binding by viewBinding(ActivityLockBinding::inflate)

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(binding.root)

binding.btnLock.setOnClickListener {
toast("유튜브 잠금 설정 완료")
}
}
}
Original file line number Diff line number Diff line change
@@ -1,17 +1,21 @@
package com.hmh.hamyeonham.feature.onboarding

import android.accessibilityservice.AccessibilityService
import android.content.Intent
import android.util.Log
import android.view.accessibility.AccessibilityEvent

class OnBoardingAccessibilityService : AccessibilityService() {
override fun onAccessibilityEvent(event: AccessibilityEvent) {
if (event.eventType == AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED) {
val packageName = event.packageName ?: return
Log.d("AccessibilityService", "현재 실행 중인 앱 패키지: $packageName")
Log.d("OnBoardingAccessibilityService", "onAccessibilityEvent: $packageName")
if (packageName != "com.google.android.youtube") return
val intent = Intent(this, LockActivity::class.java)
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)
startActivity(intent)
}
}

override fun onInterrupt() {
}
override fun onInterrupt() {}
}
17 changes: 17 additions & 0 deletions feature/onboarding/src/main/res/layout/activity_lock.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width="match_parent"
android:layout_height="match_parent">

<Button
android:id="@+id/btn_lock"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginBottom="30dp"
android:text="잠금 완료"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent" />

</androidx.constraintlayout.widget.ConstraintLayout>

0 comments on commit 9f57cb8

Please sign in to comment.