这里我试图从Audio Service类调用main活动类的方法。 但是当我把这个方法称为: -
new HomeActivity()。previousChannel();
当时活动类方法被调用,但它也自动调用oncreate()方法。
请帮帮我。
答案 0 :(得分:1)
我希望您使用 EventBus 进行类,片段,服务之间的通信。它非常简单,最可靠和高效。
只需3个步骤即可实现:
1.Define Events。
public static class MessageEvent { /* Additional fields if needed */ }
2.Prepare订阅者:声明并注释您的订阅方法,可选择指定一个线程模式:
@Subscribe(threadMode = ThreadMode.MAIN)
public void onMessageEvent(MessageEvent event) {/* Do something */};
注册并取消注册您的订阅者。例如,在Android上,活动和片段通常应根据其生命周期进行注册:
@Override
public void onStart() {
super.onStart();
EventBus.getDefault().register(this);
}
@Override
public void onStop() {
super.onStop();
EventBus.getDefault().unregister(this);
}
3.Post Events。
EventBus.getDefault().post(new MessageEvent());
有关详情,请查看here.
希望它可以帮到你。
答案 1 :(得分:0)