java - Android Broadcast Receiver not working (with two receiver) -
i have 2 broadcastreceiver , 1 working now.
manifest
<receiver android:name="com.example.basicplayerapp.core.audiojackreceiver" android:enabled="true" android:exported="true" > <intent-filter> <action android:name="android.intent.action.headset_plug" /> </intent-filter> </receiver> <!-- websocket --> <receiver android:name="com.example.basicplayerapp.core.networkreceiver"> <intent-filter > <action android:name="android.net.conn.connectivity_change" /> </intent-filter> </receiver> <service android:name="com.example.basicplayerapp.core.websocketservices"></service>
when have audiojackreceiver works prefect. added networkreceiver audiojackreceiver stopped work. advice please. thanks.
oncreate of video activity
if (headset_only) { myaudiojackreceiver = new audiojackreceiver(); }
audiojackreceiver
public class audiojackreceiver extends broadcastreceiver { public static final string tag = audiojackreceiver.class.getsimplename(); @override public void onreceive(context context, intent intent) { audiomanager audio = (audiomanager) context.getsystemservice(context.audio_service); if (intent.getaction().equals(intent.action_headset_plug)) { int state = intent.getintextra("state", -1); switch (state) { case 0: audio.setstreammute(audiomanager.stream_music, true); toast.maketext(context, "please plug in headset enjoy sound.", toast.length_long).show(); makelog("i", "headset unplugged"); break; case 1: audio.setstreammute(audiomanager.stream_music, false); makelog("i", "headset plugged"); break; default: makelog("i", "i have no idea headset state is"); toast.maketext(context, "error => have no idea headset state is", toast.length_long).show(); } } }//end onreceive
networkreceiver
public class networkreceiver extends broadcastreceiver { public static final string tag = networkreceiver.class.getsimplename(); @override public void onreceive(context context, intent intent) { log.i(tag, "onreceive"); connectivitymanager conn = (connectivitymanager)context.getsystemservice(context.connectivity_service); networkinfo networkinfo = conn.getactivenetworkinfo(); if (networkinfo != null && networkinfo.getdetailedstate() == networkinfo.detailedstate.connected) { log.i(tag, "connected"); intent startserviceintent = new intent(context, websocketservices.class); context.startservice(startserviceintent); } else if(networkinfo != null){ networkinfo.detailedstate state = networkinfo.getdetailedstate(); log.i(tag, state.name()); } else { log.i(tag, "lost connection"); } }//end onreceive };//end networkreceiver
Comments
Post a Comment