@@ -14,14 +14,20 @@ import androidx.fragment.app.Fragment
1414import androidx.navigation.Navigation
1515import androidx.recyclerview.widget.GridLayoutManager
1616import androidx.recyclerview.widget.RecyclerView
17+ import com.tencent.imsdk.v2.V2TIMManager
18+ import com.tencent.imsdk.v2.V2TIMValueCallback
1719import com.tencent.qcloud.tuicore.TUIConstants
1820import com.tencent.qcloud.tuicore.TUICore
1921import com.tencent.qcloud.tuicore.TUILogin
2022import com.tencent.qcloud.tuicore.TUIThemeManager
2123import com.tencent.qcloud.tuicore.interfaces.ITUINotification
2224import com.tencent.uikit.app.R
25+ import com.tencent.uikit.app.main.call.GroupCallActivity
26+ import com.tencent.uikit.app.main.live.LiveActivity
27+ import com.trtc.uikit.roomkit.RoomHomeActivity
2328import io.trtc.tuikit.atomicx.widget.basicwidget.avatar.AtomicAvatar
2429import io.trtc.tuikit.atomicx.widget.basicwidget.avatar.AtomicAvatar.AvatarContent
30+ import org.json.JSONObject
2531
2632class MainFragment : Fragment () {
2733 private var userCenter: AtomicAvatar ? = null
@@ -74,6 +80,7 @@ class MainFragment : Fragment() {
7480 intent.putExtra(" TITLE" , getString(item.itemTitle))
7581 intent.putExtra(" TYPE" , type)
7682 startActivity(intent)
83+ observerTUI(item.itemTargetClass)
7784 }
7885 }
7986 })
@@ -88,6 +95,29 @@ class MainFragment : Fragment() {
8895 userCenter?.setContent(AvatarContent .URL (TUILogin .getFaceUrl(), R .drawable.app_ic_avatar))
8996 }
9097
98+ private fun observerTUI (activity : Class <* >? ) {
99+ var type = 0L
100+ if (activity == GroupCallActivity ::class .java) {
101+ type = 1303
102+ } else if (activity == LiveActivity ::class .java) {
103+ type = 1119
104+ } else if (activity == RoomHomeActivity ::class .java) {
105+ type = 1205
106+ }
107+
108+ val param = JSONObject ().apply {
109+ put(" UIComponentType" , type)
110+ }.toString()
111+ V2TIMManager .getInstance()
112+ .callExperimentalAPI(" reportTUIFeatureUsage" , param, object : V2TIMValueCallback <Any > {
113+ override fun onSuccess (t : Any? ) {
114+ }
115+ override fun onError (code : Int , desc : String? ) {
116+ Log .e(TAG , " reportFeatureUsage failed: $code $desc " )
117+ }
118+ })
119+ }
120+
91121 private val isSmallScreenDevice: Boolean
92122 get() {
93123 val displayMetrics = DisplayMetrics ()
0 commit comments