我有一个活动。它包含一个按钮,其文本会动态更改。我想将此文本传递给接收短信的广播接收器。现在我的广播接收器应该接收文本,并根据文本启动或停止服务。这个怎么做?
如果您的 BroadcastReceiver 是在单独的类文件中定义的,那么您可以简单地将值广播到该接收器。收到值后,使用接收者的服务来施展魔法context
Update:
在您的活动中:
Intent in = new Intent("my.action.string");
in.putExtra("state", "activated");
sendBroadcast(in);
在你的接收器中:
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
Log.i("Receiver", "Broadcast received: " + action);
if(action.equals("my.action.string")){
String state = intent.getExtras().getString("state");
//do your stuff
}
}
在清单 xml 中:
<receiver android:name=".YourBroadcastReceiver" android:enabled="true">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED" />
<action android:name="my.action.string" />
<!-- and some more actions if you want -->
</intent-filter>
</receiver>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)