查看架构组件的模型类位于哪个线程(UI /背景)?

时间:2019-06-10 12:34:14

标签: android webrtc android-architecture-components android-viewmodel

我构建了一个基于webrtc的呼叫应用程序。到目前为止,所有代码都处于“活动”状态,因此按预期,它不适用于配置更改。我正在考虑将所有WebRTC代码放入视图模型并从视图模型更新UI。我是否也必须像在活动中一样在视图模型的单独线程中执行后台任务。目前,我在活动中使用Java Thread。

2 个答案:

答案 0 :(得分:1)

当然必须。 String appPackageName = "net.one97.paytm"; PackageManager pm = getContext().getPackageManager(); Intent appstart = pm.getLaunchIntentForPackage(appPackageName); if(null!=appstart) { getContext().startActivity(appstart); } else { Toast.makeText(getContext(), "Install PayTm on your device", Toast.LENGTH_SHORT).show(); } 只是一个类,默认情况下它不适用于工作线程。

答案 1 :(得分:1)

ViewModel只是一个与Activity / Fragment一起实例化的类。 通过线程是另一种情况,与Viewmodel无关。不要忘记,如果一个类扩展了ViewModel,它将拥有自己的lifecycle

  

我是否也必须在视图模型的单独线程中执行后台任务   就像我在活动中做的一样?

所以答案是肯定的。 ActivityFragmentViewModelPresenterInteractor或仅仅是类。无论您在何处执行异步或繁重的操作,您都将跳转到线程。即使我们根本不说Android