- 注释掉全部 Compose UI 代码(ui/、theme/、NavController、MainActivity、InitActivity 等) - BorderExt、TextExt、ToastUtils、LoadingState 中的 Compose 逻辑全部注释 - LoadingState 保留 show()/hide() 空方法避免编译报错 - 注释 SensorScaleUtils、BaseViewModel、DeviceViewModel 中的 ToastUtils 调用 - BootReceiver、CrashHandler 中 MainActivity 替换为 HomeActivity - UserViewModel、PurchaseOrderActivity 删除残余 Compose import - build.gradle.kts 替换为非 Compose 的 activity-ktx 和 coil 依赖 Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
51 lines
1.2 KiB
Kotlin
51 lines
1.2 KiB
Kotlin
package com.sw.inbound.utils
|
|
|
|
import android.content.Context
|
|
import android.view.View
|
|
//import androidx.compose.runtime.Composable
|
|
//import androidx.compose.ui.platform.LocalContext
|
|
//import androidx.compose.ui.platform.LocalView
|
|
|
|
/**
|
|
* Context 工具类
|
|
*/
|
|
object ContextUtils {
|
|
|
|
// ========== Composable 内获取 ==========
|
|
|
|
/**
|
|
* 获取当前 Composable 的 Activity Context
|
|
* 只能在 @Composable 函数中调用
|
|
*/
|
|
// @Composable
|
|
// fun getActivityContext(): Context {
|
|
// return LocalContext.current
|
|
// }
|
|
|
|
/**
|
|
* 获取当前 Composable 的 View
|
|
*/
|
|
// @Composable
|
|
// fun getLocalView(): View {
|
|
// return LocalView.current
|
|
// }
|
|
|
|
// ========== 非 Composable 环境获取 ==========
|
|
|
|
/**
|
|
* 通过静态 Application 引用获取
|
|
* 需要在 Application 类中初始化
|
|
*/
|
|
private var _applicationContext: Context? = null
|
|
|
|
fun initAppContext(context: Context) {
|
|
_applicationContext = context.applicationContext
|
|
}
|
|
|
|
fun getAppContext(): Context {
|
|
return _applicationContext ?: throw IllegalStateException(
|
|
"Application context not initialized. Call initAppContext() first."
|
|
)
|
|
}
|
|
}
|