在开发基于警报的应用程序时,我陷入了困境。
当我的闹钟被触发时,我可以在BroadCastReceiver :: onReceive()中接收该事件。 在这个函数中,我想通知/调用一个位于MainActivity上的函数。
如何实现同样的目标??
答案 0 :(得分:0)
你不能把这个功能移到它自己的班级,并从你的活动和你的接收器中调用它吗?
答案 1 :(得分:0)
以dinamically方式创建BroadcastReceiver:
在您的BroadcastReceiver类中定义成员:
YourMainActivity yourMain = null;
和方法:
setMainActivityHandler(YourMainActivity main){
yourMain = main;
}
来自您的MainActivity的:
private YourBroadcastReceiverClassName yourBR = null;
yourBR = new YourBroadcastReceiverClassName();
yourBR.setMainActivityHandler(this);
IntentFilter callInterceptorIntentFilter = new IntentFilter("android.intent.action.ANY_ACTION");
registerReceiver(callInterceptor, callInterceptorIntentFilter);
最后,当你的BR.onReceive被解雇时,你可以打电话给:
yourMain.methodOfMainActivity();