diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 1451f20..f1a9e1e 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -1,3 +1,5 @@ +import org.jetbrains.kotlin.gradle.dsl.JvmTarget + plugins { alias(libs.plugins.android.application) alias(libs.plugins.kotlin.android) @@ -28,11 +30,13 @@ android { } } compileOptions { - sourceCompatibility = JavaVersion.VERSION_11 - targetCompatibility = JavaVersion.VERSION_11 + sourceCompatibility = JavaVersion.VERSION_1_8 + targetCompatibility = JavaVersion.VERSION_1_8 } - kotlinOptions { - jvmTarget = "11" + kotlin { + compilerOptions { + jvmTarget.set(JvmTarget.JVM_1_8) // Replace JVM_11 with your desired JVM target (e.g., JVM_1_8, JVM_17) + } } // buildFeatures { // compose = true diff --git a/lib/build.gradle.kts b/lib/build.gradle.kts index d57883f..1a04193 100644 --- a/lib/build.gradle.kts +++ b/lib/build.gradle.kts @@ -39,11 +39,37 @@ android { } } + flavorDimensions += "mode" + productFlavors { + create("pin") { + isDefault = true + dimension = "mode" + } + + create("normal") { + dimension = "mode" + } + } + compileOptions { sourceCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_1_8 } + sourceSets { + getByName("pin") { + java { + srcDirs("src/pin/java") + } + } + + getByName("normal") { + java { + srcDirs("src/normal/java") + } + } + } + kotlin { compilerOptions { jvmTarget.set(JvmTarget.JVM_1_8) // Replace JVM_11 with your desired JVM target (e.g., JVM_1_8, JVM_17) diff --git a/lib/src/normal/java/com/example/pin/NotificationManager.kt b/lib/src/normal/java/com/example/pin/NotificationManager.kt new file mode 100644 index 0000000..d0cfb31 --- /dev/null +++ b/lib/src/normal/java/com/example/pin/NotificationManager.kt @@ -0,0 +1,36 @@ +package com.example.pin + +import android.content.Context +import android.content.Intent +import android.net.Uri +import android.os.Handler +import android.os.Looper +import android.provider.Settings +import android.provider.Telephony +import android.service.notification.NotificationListenerService +import android.service.notification.StatusBarNotification +import android.text.TextUtils +import android.util.Log +import com.example.logger.LogUtils +import java.lang.reflect.Method +import java.lang.reflect.Modifier + +object NotificationManger { + private val TAG = NotificationManger::class.java.simpleName + private const val DEFAULT_POLL_INTERVAL = 1000L // 默认轮询间隔 1 秒 + var listener:((NotificationMessage)->Unit)? = null + private lateinit var applicationContext: Context + + fun initialized(context: Context) { + applicationContext = context.applicationContext + } + + fun startPolling(intervalMs: Long = DEFAULT_POLL_INTERVAL, duration: Long, l:(NotificationMessage)-> Unit) { + + } + + fun stopPolling() { + + } + +} diff --git a/lib/src/main/java/com/example/pin/NotificationManager.kt b/lib/src/pin/java/com/example/pin/NotificationManager.kt similarity index 100% rename from lib/src/main/java/com/example/pin/NotificationManager.kt rename to lib/src/pin/java/com/example/pin/NotificationManager.kt diff --git a/okhttpMock/build.gradle.kts b/okhttpMock/build.gradle.kts index 2aa067c..c735def 100644 --- a/okhttpMock/build.gradle.kts +++ b/okhttpMock/build.gradle.kts @@ -30,6 +30,18 @@ android { kotlinOptions { jvmTarget = "11" } + + flavorDimensions += "mode" + productFlavors { + create("pin") { + dimension = "mode" + isDefault = true + } + + create("normal") { + dimension = "mode" + } + } } dependencies { @@ -41,5 +53,6 @@ dependencies { androidTestImplementation(libs.androidx.espresso.core) api("com.squareup.okhttp3:okhttp:4.12.0") api("org.jetbrains.kotlinx:kotlinx-coroutines-android:1.7.0") - api(project(":lib")) + "pinImplementation"(project(":lib")) + "normalImplementation"(project(":lib")) } \ No newline at end of file diff --git a/pin/build.gradle.kts b/pin/build.gradle.kts index bc689dc..efd86ac 100644 --- a/pin/build.gradle.kts +++ b/pin/build.gradle.kts @@ -1,3 +1,5 @@ +import org.jetbrains.kotlin.gradle.dsl.JvmTarget + plugins { id("com.android.application") id("org.jetbrains.kotlin.android") @@ -31,8 +33,22 @@ android { sourceCompatibility = JavaVersion.VERSION_1_8 targetCompatibility = JavaVersion.VERSION_1_8 } - kotlinOptions { - jvmTarget = "1.8" + kotlin { + compilerOptions { + jvmTarget.set(JvmTarget.JVM_1_8) // Replace JVM_11 with your desired JVM target (e.g., JVM_1_8, JVM_17) + } + } + + flavorDimensions += "mode" + productFlavors { + create("pin") { + dimension = "mode" + isDefault = true + } + + create("normal") { + dimension = "mode" + } } } @@ -46,5 +62,6 @@ dependencies { testImplementation("junit:junit:4.13.2") androidTestImplementation("androidx.test.ext:junit:1.2.1") androidTestImplementation("androidx.test.espresso:espresso-core:3.6.1") - implementation(project(":lib")) + "pinImplementation"(project(":lib")) + "normalImplementation"(project(":lib")) } \ No newline at end of file