如何在模块之间传输数据?B模块实现了A模块。因此模块B可以访问模块A,但是模块A不能访问模块B。我如何将数据从模块A中的某个活动发送到模块B中的某个活动?模块B中的活动始终是打开的(当A模块中的活动正在运行时,我不会终止模块B中的活动),并且我不能使用intent结构,我使用finish()来结束模块A中的活动。模块A中的活动已无法到达模块B中的活动。
模块B的gradle文件中有以下代码。
implementation project(':ModuleA')发布于 2020-10-21 21:02:24
我用下面的方法解决了这个问题。
在模块B中,我启动ModuleAActivity。
startActivityForResult(Intent(this,ModuleAActivity::class.java),1)InModule A,我设置了数据。
var returnIntent = intent
returnIntent.putExtra("result",myData)
setResult(1, returnIntent)
finish()然后在模块B中,我再次获得数据。
override fun onActivityResult(requestCode: Int, resultCode: Int, data: Intent?) {
super.onActivityResult(requestCode, resultCode, data)
if (requestCode == 1) {
if (resultCode == 1) {
val result = data?.getSerializableExtra("result")
}
if (resultCode == Activity.RESULT_CANCELED) {
}
}
}https://stackoverflow.com/questions/64447002
复制相似问题