feat(login): 添加调试模式下的测试登录功能
- 在登录界面添加了测试用户登录按钮 - 仅在DEBUG模式下显示测试登录选项 - 集成测试用户1和测试用户2的快速登录功能 - 移动IM SDK中的事件监听器定义位置以优化代码结构
这个提交包含在:
父节点
d0b263411d
当前提交
66f2f8a47b
@ -32,6 +32,7 @@ import androidx.lifecycle.viewmodel.compose.viewModel
|
|||||||
import androidx.lifecycle.viewmodel.initializer
|
import androidx.lifecycle.viewmodel.initializer
|
||||||
import androidx.lifecycle.viewmodel.viewModelFactory
|
import androidx.lifecycle.viewmodel.viewModelFactory
|
||||||
import com.xuqm.sdk.sample.di.AppDependencies
|
import com.xuqm.sdk.sample.di.AppDependencies
|
||||||
|
import com.xuqm.sdk.sample.BuildConfig
|
||||||
import android.widget.Toast
|
import android.widget.Toast
|
||||||
|
|
||||||
@Composable
|
@Composable
|
||||||
@ -122,5 +123,15 @@ fun LoginScreen(
|
|||||||
TextButton(onClick = onOpenEnvironment) {
|
TextButton(onClick = onOpenEnvironment) {
|
||||||
Text("环境设置")
|
Text("环境设置")
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (BuildConfig.DEBUG) {
|
||||||
|
Spacer(Modifier.height(8.dp))
|
||||||
|
TextButton(onClick = { viewModel.login("testuser1", "test123") }) {
|
||||||
|
Text("[测试] 登录用户1", style = MaterialTheme.typography.bodySmall)
|
||||||
|
}
|
||||||
|
TextButton(onClick = { viewModel.login("testuser2", "test123") }) {
|
||||||
|
Text("[测试] 登录用户2", style = MaterialTheme.typography.bodySmall)
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -98,6 +98,13 @@ object ImSDK {
|
|||||||
fun onConversationsChanged(conversations: List<ConversationData>)
|
fun onConversationsChanged(conversations: List<ConversationData>)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private val conversationEventListener = object : ImEventListener {
|
||||||
|
override fun onMessage(message: ImMessage) { onMessageReceived(message) }
|
||||||
|
override fun onGroupMessage(message: ImMessage) { onMessageReceived(message) }
|
||||||
|
override fun onRead(message: ImMessage) { onReadReceived(message) }
|
||||||
|
override fun onRevoke(message: ImMessage) { onRevokeReceived(message) }
|
||||||
|
}
|
||||||
|
|
||||||
init {
|
init {
|
||||||
XuqmSDK.currentLoginSession?.let { onSdkLogin(it) }
|
XuqmSDK.currentLoginSession?.let { onSdkLogin(it) }
|
||||||
}
|
}
|
||||||
@ -901,13 +908,6 @@ object ImSDK {
|
|||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
private val conversationEventListener = object : ImEventListener {
|
|
||||||
override fun onMessage(message: ImMessage) { onMessageReceived(message) }
|
|
||||||
override fun onGroupMessage(message: ImMessage) { onMessageReceived(message) }
|
|
||||||
override fun onRead(message: ImMessage) { onReadReceived(message) }
|
|
||||||
override fun onRevoke(message: ImMessage) { onRevokeReceived(message) }
|
|
||||||
}
|
|
||||||
|
|
||||||
private fun getConversationTargetId(message: ImMessage): String {
|
private fun getConversationTargetId(message: ImMessage): String {
|
||||||
return if (message.chatType.uppercase() == "GROUP") {
|
return if (message.chatType.uppercase() == "GROUP") {
|
||||||
message.toId
|
message.toId
|
||||||
|
|||||||
正在加载...
在新工单中引用
屏蔽一个用户