List of usage examples for android.content Intent ACTION_HEADSET_PLUG
String ACTION_HEADSET_PLUG
To view the source code for android.content Intent ACTION_HEADSET_PLUG.
Click Source Link
From source file:dk.nota.lyt.libvlc.PlaybackService.java
@Override public void onCreate() { super.onCreate(); mSettings = PreferenceManager.getDefaultSharedPreferences(this); mMediaPlayer = newMediaPlayer();//from w ww . j av a 2 s.c o m if (!Utils.testCompatibleCPU(this)) { stopSelf(); return; } mDetectHeadset = mSettings.getBoolean("enable_headset_detection", true); mCurrentIndex = -1; mPrevIndex = -1; mNextIndex = -1; mPrevious = new Stack<Integer>(); mRemoteControlClientReceiverComponent = new ComponentName(this.getApplicationContext(), RemoteControlEventReceiver.class.getName()); // Make sure the audio player will acquire a wake-lock while playing. If we don't do // that, the CPU might go to sleep while the song is playing, causing playback to stopService. PowerManager pm = (PowerManager) this.getApplicationContext().getSystemService(Context.POWER_SERVICE); mWakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, TAG); IntentFilter filter = new IntentFilter(); filter.setPriority(Integer.MAX_VALUE); filter.addAction(ACTION_REMOTE_BACKWARD); filter.addAction(ACTION_REMOTE_PLAYPAUSE); filter.addAction(ACTION_REMOTE_PLAY); filter.addAction(ACTION_REMOTE_PAUSE); filter.addAction(ACTION_REMOTE_STOP); filter.addAction(ACTION_REMOTE_FORWARD); filter.addAction(Intent.ACTION_HEADSET_PLUG); filter.addAction(AudioManager.ACTION_AUDIO_BECOMING_NOISY); registerReceiver(mReceiver, filter); }
From source file:org.durka.hallmonitor.CoreReceiver.java
@Override public void onReceive(Context context, Intent intent) { if (intent.getAction().equals(Intent.ACTION_BOOT_COMPLETED) || intent.getAction().equals(QUICKBOOT_POWERON) || intent.getAction().equals(HTC_QUICKBOOT_POWERON)) { Log.d(LOG_TAG + ".boot", "Boot called."); SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context); if (prefs.getBoolean("pref_enabled", false)) { Intent mIntent = new Intent(context, CoreService.class); context.startService(mIntent); }/*from w w w . ja va2 s. co m*/ } if (CoreStateManager.getInitialized()) { localContext = CoreStateManager.getContext(); mStateManager = ((CoreApp) localContext).getStateManager(); } else { return; } if (!mStateManager.getPreference().getBoolean("pref_enabled", false)) { return; } mStateManager.acquireCPUGlobal(); if (intent.getAction().equals(Intent.ACTION_SCREEN_ON)) { Log.d(LOG_TAG + ".screen", "Screen on event received."); if (mStateManager.getCoverClosed()) { Log.d(LOG_TAG + ".screen", "Cover is closed, display Default Activity."); mStateManager.setBlackScreenTime(0); Intent mIntent = new Intent(localContext, CoreService.class); mIntent.putExtra(CoreApp.CS_EXTRA_TASK, CoreApp.CS_TASK_LAUNCH_ACTIVITY); mStateManager.sendToCoreService(mIntent); } else { // Log.d(LOG_TAG + ".screen", // "Cover is open, free everything."); // mStateManager.freeDevice(); Log.d(LOG_TAG + ".screen", "Cover is open, send to background."); Intent stbDAIntent = new Intent(CoreApp.DA_ACTION_SEND_TO_BACKGROUND); LocalBroadcastManager.getInstance(localContext).sendBroadcastSync(stbDAIntent); } } else if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF)) { Log.d(LOG_TAG + ".screen", "Screen off event received."); // mStateManager.freeDevice(); } else if (intent.getAction().equals(Intent.ACTION_POWER_CONNECTED)) { Intent batteryDAIntent = new Intent(CoreApp.DA_ACTION_BATTERY_REFRESH); LocalBroadcastManager.getInstance(localContext).sendBroadcastSync(batteryDAIntent); Intent mIntent = new Intent(localContext, CoreService.class); mIntent.putExtra(CoreApp.CS_EXTRA_TASK, CoreApp.CS_TASK_WAKEUP_DEVICE); mStateManager.sendToCoreService(mIntent); } else if (intent.getAction().equals(Intent.ACTION_POWER_DISCONNECTED)) { Intent batteryDAIntent = new Intent(CoreApp.DA_ACTION_BATTERY_REFRESH); LocalBroadcastManager.getInstance(localContext).sendBroadcastSync(batteryDAIntent); Intent mIntent = new Intent(localContext, CoreService.class); mIntent.putExtra(CoreApp.CS_EXTRA_TASK, CoreApp.CS_TASK_WAKEUP_DEVICE); mStateManager.sendToCoreService(mIntent); } else if (intent.getAction().equals(ALARM_ALERT_ACTION)) { Log.d(LOG_TAG + ".alarm", "Alarm on event received."); // only take action if alarm controls are enabled if (mStateManager.getPreference().getBoolean("pref_alarm_controls", false)) { Log.d(LOG_TAG + ".alarm", "Alarm controls are enabled, taking action."); mStateManager.setAlarmFiring(true); Intent mIntent = new Intent(localContext, CoreService.class); mIntent.putExtra(CoreApp.CS_EXTRA_TASK, CoreApp.CS_TASK_INCOMMING_ALARM); mStateManager.sendToCoreService(mIntent); } else { Log.d(LOG_TAG + ".alarm", "Alarm controls are not enabled."); } } else if (intent.getAction().equals(ALARM_DONE_ACTION)) { Log.d(LOG_TAG + ".alarm", "Alarm done event received."); // only take action if alarm controls are enabled if (mStateManager.getPreference().getBoolean("pref_alarm_controls", false)) { Log.d(mStateManager.getPreference() + ".alarm", "alarm is over, cleaning up"); mStateManager.setAlarmFiring(false); if (mStateManager.getCoverClosed()) { Intent mIntent = new Intent(localContext, CoreService.class); mIntent.putExtra(CoreApp.CS_EXTRA_TASK, CoreApp.CS_TASK_LAUNCH_ACTIVITY); mStateManager.sendToCoreService(mIntent); } } } else if (intent.getAction().equals(TelephonyManager.ACTION_PHONE_STATE_CHANGED)) { if (mStateManager.getPreference().getBoolean("pref_phone_controls", false)) { String state = intent.getStringExtra(TelephonyManager.EXTRA_STATE); Log.d(LOG_TAG + ".phone", "phone state changed to " + state); if (state.equals(TelephonyManager.EXTRA_STATE_RINGING)) { Intent mIntent; mStateManager.setPhoneRinging(true); mStateManager.setCallFrom(intent.getStringExtra(TelephonyManager.EXTRA_INCOMING_NUMBER)); Log.d(LOG_TAG, "call from " + mStateManager.getCallFrom()); mIntent = new Intent(localContext, CoreService.class); mIntent.putExtra(CoreApp.CS_EXTRA_TASK, CoreApp.CS_TASK_INCOMMING_CALL); mStateManager.sendToCoreService(mIntent); } else if (state.equals(TelephonyManager.EXTRA_STATE_IDLE)) { Intent mIntent; mStateManager.setPhoneRinging(false); Log.d(LOG_TAG, "call is over, cleaning up"); if (mStateManager.getCoverClosed()) { mIntent = new Intent(localContext, CoreService.class); mIntent.putExtra(CoreApp.CS_EXTRA_TASK, CoreApp.CS_TASK_LAUNCH_ACTIVITY); mStateManager.sendToCoreService(mIntent); } } else if (state.equals(TelephonyManager.EXTRA_STATE_OFFHOOK)) { } } else { Log.d(LOG_TAG + ".phone", "phone controls are not enabled"); } } else if (intent.getAction().equals(mStateManager.getActionCover())) { int state = intent.getIntExtra(EXTRA_LID_STATE, LID_ABSENT); Log.d(LOG_TAG + ".cover", "cover state changed to " + state); if (state == LID_CLOSED) { Log.d(LOG_TAG + ".cover", "Cover is close, enable Default Activity."); mStateManager.setCoverClosed(true); Intent mIntent = new Intent(localContext, CoreService.class); mIntent.putExtra(CoreApp.CS_EXTRA_TASK, CoreApp.CS_TASK_LAUNCH_ACTIVITY); mStateManager.sendToCoreService(mIntent); } else if (state == LID_OPEN) { // Log.d(LOG_TAG + ".cover", // "Cover is open, stopping Default Activity."); mStateManager.setCoverClosed(false); // mStateManager.freeDevice(); Log.d(LOG_TAG + ".screen", "Cover is open, send to background."); Intent stbDAIntent = new Intent(CoreApp.DA_ACTION_SEND_TO_BACKGROUND); LocalBroadcastManager.getInstance(localContext).sendBroadcastSync(stbDAIntent); Intent mIntent = new Intent(localContext, CoreService.class); mIntent.putExtra(CoreApp.CS_EXTRA_TASK, CoreApp.CS_TASK_WAKEUP_DEVICE); mStateManager.sendToCoreService(mIntent); } } else if (intent.getAction().equals(TORCH_STATE_CHANGED)) { if (mStateManager.getPreference().getBoolean("pref_flash_controls", false)) { Log.d(LOG_TAG + ".torch", "torch state changed"); Intent mIntent = new Intent(localContext, CoreService.class); mIntent.putExtra(CoreApp.CS_EXTRA_TASK, CoreApp.CS_TASK_TORCH_STATE); if (intent.getIntExtra("state", 0) != 0) { mIntent.putExtra(CoreApp.CS_EXTRA_STATE, true); } else { mIntent.putExtra(CoreApp.CS_EXTRA_STATE, false); } mStateManager.sendToCoreService(mIntent); } else { Log.d(LOG_TAG + ".torch", "torch controls are not enabled."); } } else if (intent.getAction().equals(Intent.ACTION_HEADSET_PLUG)) { int state = intent.getExtras().getInt("state"); Log.d(LOG_TAG + ".headset", "headset is " + (state == 0 ? "gone" : "here") + "!"); Intent mIntent = new Intent(localContext, CoreService.class); mIntent.putExtra(CoreApp.CS_EXTRA_TASK, CoreApp.CS_TASK_HEADSET_PLUG); mStateManager.sendToCoreService(mIntent); } else if (intent.getAction().equals("org.durka.hallmonitor.debug")) { Log.d(LOG_TAG + "", "received debug intent"); // test intent to show/hide a notification boolean showhide = false; switch (intent.getIntExtra("notif", 0)) { case 1: showhide = true; break; case 2: showhide = false; break; } if (showhide) { Notification.Builder mBuilder = new Notification.Builder(localContext) .setSmallIcon(R.drawable.ic_launcher).setContentTitle("Hall Monitor") .setContentText("Debugging is fun!"); NotificationManager mNotificationManager = (NotificationManager) localContext .getSystemService(Context.NOTIFICATION_SERVICE); mNotificationManager.notify(42, mBuilder.build()); } else { NotificationManager mNotificationManager = (NotificationManager) localContext .getSystemService(Context.NOTIFICATION_SERVICE); mNotificationManager.cancel(42); } } mStateManager.releaseCPUGlobal(); }
From source file:net.sf.asap.PlayerService.java
@Override public void onStart(Intent intent, int startId) { super.onStart(intent, startId); registerReceiver(headsetReceiver, new IntentFilter(Intent.ACTION_HEADSET_PLUG)); registerMediaButtonEventReceiver("registerMediaButtonEventReceiver"); TelephonyManager telephony = (TelephonyManager) getSystemService(TELEPHONY_SERVICE); telephony.listen(new PhoneStateListener() { public void onCallStateChanged(int state, String incomingNumber) { if (state == TelephonyManager.CALL_STATE_RINGING) pause();//from ww w . jav a 2 s.c o m } }, PhoneStateListener.LISTEN_CALL_STATE); Uri uri = intent.getData(); String playlistUri = intent.getStringExtra(EXTRA_PLAYLIST); if (playlistUri != null) setPlaylist(Uri.parse(playlistUri), false); else if ("file".equals(uri.getScheme())) { if (ASAPInfo.isOurFile(uri.toString())) setPlaylist(Util.getParent(uri), false); else { setPlaylist(uri, true); uri = playlist.get(0); } } playFile(uri, SONG_DEFAULT); }
From source file:org.durka.hallmonitor.CoreStateManager.java
public void registerCoreReceiver() { if (mCoreReceiver == null) { /*/*w w w. jav a 2 s . co m*/ * HEADSET_PLUG, SCREEN_ON and SCREEN_OFF only available through * registerReceiver function */ mCoreReceiver = new CoreReceiver(); IntentFilter intfil = new IntentFilter(); intfil.setPriority(990); intfil.addAction(Intent.ACTION_HEADSET_PLUG); intfil.addAction(Intent.ACTION_SCREEN_ON); intfil.addAction(Intent.ACTION_SCREEN_OFF); if (preference_all.getBoolean("pref_internalservice", false)) { IntentFilter mIntentFilter = new IntentFilter(); mIntentFilter.addAction(getActionCover()); LocalBroadcastManager.getInstance(mAppContext).registerReceiver(mCoreReceiver, mIntentFilter); } else { intfil.addAction(CoreReceiver.ACTION_LID_STATE_CHANGED); } mAppContext.registerReceiver(mCoreReceiver, intfil); } }
From source file:com.gelakinetic.selfr.CameraActivity.java
/** * When the activity resumes, request permissions, or if the app has them initialize: * - audio capturer (to detect button presses) * - camera (to take pictures)/*from w w w. ja v a2s . c om*/ * - headset state receiver (to detect the selfie stick) * - accelerometer (to properly set picture rotation) */ @Override protected void onResume() { super.onResume(); /* Check to see what permissions we're granted */ ArrayList<String> requestedPermissions = new ArrayList<>(3); if (ContextCompat.checkSelfPermission(this, Manifest.permission.CAMERA) != PackageManager.PERMISSION_GRANTED) { requestedPermissions.add(Manifest.permission.CAMERA); } if (ContextCompat.checkSelfPermission(this, Manifest.permission.WRITE_EXTERNAL_STORAGE) != PackageManager.PERMISSION_GRANTED) { requestedPermissions.add(Manifest.permission.WRITE_EXTERNAL_STORAGE); } if (ContextCompat.checkSelfPermission(this, Manifest.permission.RECORD_AUDIO) != PackageManager.PERMISSION_GRANTED) { requestedPermissions.add(Manifest.permission.RECORD_AUDIO); } /* If we don't have all of the permissions */ if (requestedPermissions.size() > 0) { String permissionStrings[] = new String[requestedPermissions.size()]; requestedPermissions.toArray(permissionStrings); /* Request the permissions */ ActivityCompat.requestPermissions(this, permissionStrings, PERMISSION_REQUEST_CODE); } else { /* Otherwise, fire everything up */ /* Set things based on preferences */ SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(this); if (prefs.getBoolean(getString(R.string.display_value_key), false)) { mDebugTextView.setVisibility(View.VISIBLE); } else { mDebugTextView.setVisibility(View.GONE); } mButtonThreshold = Float.parseFloat( prefs.getString(getString(R.string.threshold_key), getString(R.string.default_threshold))); /* Set up the audio capture */ mAudioCapturer = AudioCapturer.getInstance(this); /* Set up the camera */ mCamera = getCameraInstance(mCameraType); if (mCamera != null) { mCameraPreview = new CameraPreview(this, mCamera); mContentView.addView(mCameraPreview); } /* Register the headset state receiver */ mHeadsetStateReceiver = new HeadsetStateReceiver(this); registerReceiver(mHeadsetStateReceiver, new IntentFilter(Intent.ACTION_HEADSET_PLUG)); /* Set up the accelerometer */ mOrientationEventListener = new OrientationEventListener(CameraActivity.this, SensorManager.SENSOR_DELAY_NORMAL) { /** * Called when the orientation of the device has changed. orientation parameter is * in degrees, ranging from 0 to 359. orientation is 0 degrees when the device is * oriented in its natural position, 90 degrees when its left side is at the top, * 180 degrees when it is upside down, and 270 degrees when its right side is to the * top. ORIENTATION_UNKNOWN is returned when the device is close to flat and the * orientation cannot be determined. * * @param orientation The orientation of the device. (0->359, ORIENTATION_UNKNOWN) */ @Override public void onOrientationChanged(int orientation) { /* If the orientation is unknown, don't bother */ if (orientation == ORIENTATION_UNKNOWN) { return; } /* Clamp rotation to nearest 90 degree wedge, depending on camera */ if (mCameraType == Camera.CameraInfo.CAMERA_FACING_FRONT) { if (315 <= orientation || orientation < 45) { mDeviceRotation = 270; } else if (45 <= orientation && orientation < 135) { mDeviceRotation = 180; } else if (135 <= orientation && orientation < 225) { mDeviceRotation = 90; } else if (225 <= orientation && orientation < 315) { mDeviceRotation = 0; } } else { if (315 <= orientation || orientation < 45) { mDeviceRotation = 90; } else if (45 <= orientation && orientation < 135) { mDeviceRotation = 180; } else if (135 <= orientation && orientation < 225) { mDeviceRotation = 270; } else if (225 <= orientation && orientation < 315) { mDeviceRotation = 0; } } } }; if (mOrientationEventListener.canDetectOrientation()) { mOrientationEventListener.enable(); } /* Trigger the initial hide() shortly after the activity has been * created, to briefly hint to the user that UI controls * are available. */ delayedHide(2000); } }
From source file:com.kasungunathilaka.sarigama.ui.HomeActivity.java
@Override protected void onResume() { IntentFilter filter = new IntentFilter(Intent.ACTION_HEADSET_PLUG); registerReceiver(myReceiver, filter); registerReceiver(myReceiver, new IntentFilter(ACTION_PLAY)); registerReceiver(myReceiver, new IntentFilter(ACTION_BRING_FRONT)); registerReceiver(myReceiver, new IntentFilter(ACTION_NEXT)); registerReceiver(myReceiver, new IntentFilter(ACTION_PREV)); super.onResume(); }
From source file:org.mariotaku.harmony.MusicPlaybackService.java
@Override public void onCreate() { super.onCreate(); // Needs to be done in this thread, since otherwise // ApplicationContext.getPowerManager() crashes. mResources = getResources();/* ww w. j ava 2 s. com*/ mPlayer = new MultiPlayer(this); mResolver = getContentResolver(); mPlayer.setHandler(mMediaplayerHandler); mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE); mTelephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); mAudioManager.registerMediaButtonEventReceiver( new ComponentName(getPackageName(), MediaButtonIntentReceiver.class.getName())); mPreferences = new PreferencesEditor(this); mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); mCardId = MusicUtils.getCardId(this); registerExternalStorageListener(); registerA2dpServiceListener(); reloadQueue(); IntentFilter commandFilter = new IntentFilter(); commandFilter.addAction(SERVICECMD); commandFilter.addAction(TOGGLEPAUSE_ACTION); commandFilter.addAction(PAUSE_ACTION); commandFilter.addAction(NEXT_ACTION); commandFilter.addAction(PREVIOUS_ACTION); commandFilter.addAction(CYCLEREPEAT_ACTION); commandFilter.addAction(TOGGLESHUFFLE_ACTION); commandFilter.addAction(BROADCAST_PLAYSTATUS_REQUEST); registerReceiver(mIntentReceiver, commandFilter); registerReceiver(mExternalAudioDeviceStatusReceiver, new IntentFilter(Intent.ACTION_HEADSET_PLUG)); PowerManager pm = (PowerManager) getSystemService(Context.POWER_SERVICE); mWakeLock = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, this.getClass().getName()); mWakeLock.setReferenceCounted(false); // If the service was idle, but got killed before it stopped itself, the // system will relaunch it. Make sure it gets stopped again in that // case. Message msg = mDelayedStopHandler.obtainMessage(); mDelayedStopHandler.sendMessageDelayed(msg, IDLE_DELAY); }
From source file:org.restcomm.app.qoslib.Services.Intents.IntentHandler.java
@Override public void onReceive(Context context, Intent intent) { String action = intent.getAction(); Bundle intentExtras = intent.getExtras(); if (owner == null) return;// w w w . j a v a 2s. c o m owner.getWebSocketManager().sendIntentToWebSocket(action, intentExtras); //capture the "battery changed" event if (action.equals(Intent.ACTION_BATTERY_CHANGED)) { int level = intent.getIntExtra(BatteryManager.EXTRA_LEVEL, 0); int scale = intent.getIntExtra(BatteryManager.EXTRA_SCALE, 100); DeviceInfoOld.battery = level * 100 / scale; int plugged = intent.getIntExtra(BatteryManager.EXTRA_PLUGGED, -1); boolean bCharging = plugged == BatteryManager.BATTERY_PLUGGED_AC || plugged == BatteryManager.BATTERY_PLUGGED_USB; owner.setBatteryCharging(bCharging); dataMonitorStats.setBattery(bCharging, DeviceInfoOld.battery); } else if (action.equals(Intent.ACTION_POWER_CONNECTED)) { owner.setBatteryCharging(true); dataMonitorStats.setBattery(true, null); } else if (action.equals(Intent.ACTION_POWER_DISCONNECTED)) { owner.setBatteryCharging(false); dataMonitorStats.setBattery(false, null); } else if (action.equals(Intent.ACTION_VIEW)) { //this is supposed to trigger the update event //owner.triggerUpdateEvent(false, false); } else if (action.equals(CommonIntentActionsOld.ACTION_START_UI)) { String packagename = intent.getStringExtra("packagename"); String mypackagename = context.getPackageName(); PreferenceManager.getDefaultSharedPreferences(context).edit() .putString(PreferenceKeys.Miscellaneous.YEILDED_SERVICE, packagename).commit(); // If the UI started on a different MMC app UI, then we stop this service until this UI is launched if (!packagename.equals(mypackagename)) // This will exit the service when safe, and won't restart it because it will be yeilded owner.restartSelf(); } else if (action.equals(UPDATE_ACTION)) { owner.getEventManager().triggerUpdateEvent(false, false); } else if (action.equals(COLDRESET_ACTION)) { //this is supposed to trigger the update event owner.getGpsManager().coldStart("triggered by user"); } else if (action.equals(EMAIL_CSV)) { //this is supposed to trigger the update event owner.requestCsvEmail(); } else if (action.equals(SPEED_TEST)) { //this is supposed to trigger a speed test int trigger = intent.getIntExtra(CommonIntentBundleKeysOld.EXTRA_SPEED_TRIGGER, 0); //owner.triggerSMSTest(trigger); owner.getEventManager().queueActiveTest(EventType.MAN_SPEEDTEST, trigger); } else if (action.equals(RUN_WEBSOCKET)) { //this is supposed to trigger a speed test boolean bStart = intent.getBooleanExtra(EXTRA_START_WEBSOCKET, true); owner.getWebSocketManager().runWebSocket(bStart); //owner.triggerSpeedTest(trigger); } else if (action.equals(ACTIVE_TEST)) { //this is supposed to trigger a speed test int evType = intent.getIntExtra(CommonIntentBundleKeysOld.EXTRA_TEST_TYPE, 0); EventType eventType = EventType.get(evType); int trigger = intent.getIntExtra(CommonIntentBundleKeysOld.EXTRA_SPEED_TRIGGER, 0); owner.getEventManager().queueActiveTest(eventType, trigger); } else if (action.equals(SMS_TEST)) { //this is supposed to trigger a speed test int trigger = intent.getIntExtra(CommonIntentBundleKeysOld.EXTRA_SPEED_TRIGGER, 0); //owner.triggerSMSTest(trigger); owner.getEventManager().queueActiveTest(EventType.SMS_TEST, trigger); } else if (action.contains(SMS_DELIVERED)) { //add delivery time to connection history int identifier = intent.getIntExtra("identifier", 0); //in case we need to search connection list to find which SMS long deliveryTime = 0; switch (getResultCode()) { case Activity.RESULT_OK: deliveryTime = System.currentTimeMillis(); break; case SmsManager.RESULT_ERROR_GENERIC_FAILURE: deliveryTime = -1; break; case SmsManager.RESULT_ERROR_NO_SERVICE: deliveryTime = -1; break; case SmsManager.RESULT_ERROR_NULL_PDU: deliveryTime = -1; break; case SmsManager.RESULT_ERROR_RADIO_OFF: deliveryTime = -1; break; } owner.getEventManager().handleSMSDeliverNotification(identifier, deliveryTime); } else if (action.equals(LATENCY_TEST)) { int trigger = intent.getIntExtra(CommonIntentBundleKeysOld.EXTRA_SPEED_TRIGGER, 0); owner.getEventManager().queueActiveTest(EventType.LATENCY_TEST, trigger); //owner.runLatencyTest(false); } else if (action.equals(ACTION_STOP_SPEEDTEST)) { owner.getEventManager().killSpeedTest(); } else if (action.equals(ACTION_STOP_VIDEOTEST)) { int testType = intent.getIntExtra(CommonIntentBundleKeysOld.EXTRA_TEST_TYPE, 0); owner.getEventManager().killActiveTest(testType); } else if (action.equals(ROAMING_ON)) { dataMonitorStats.setRoaming(true); } else if (action.equals(ROAMING_OFF)) { dataMonitorStats.setRoaming(false); } else if (action.equals("android.intent.action.ANY_DATA_STATE")) { String apn = intentExtras.getString("apn"); String state = intentExtras.getString("state"); String apnType = intentExtras.getString("apnType"); String extras = apnType + "" + state; if (state.equals("CONNECTED") && !apnType.equals("default")) extras = extras + "!"; if (apnType != null && apnType.equals("default") && apn != null) { SharedPreferences securePref = MainService.getSecurePreferences(context); securePref.edit().putString(PreferenceKeys.Miscellaneous.KEY_APN, apn).commit(); } } else if (action.equals("android.intent.action.DATA_CONNECTION_CONNECTED_TO_PROVISIONING_APN")) { String apn = intentExtras.getString("apn"); String apnType = intentExtras.getString("apnType"); String extras = apn + "," + apnType; } else if (action.equals("android.intent.action.ACTION_DATA_CONNECTION_FAILED")) { String phoneName = intentExtras.getString("phoneName"); String reason = intentExtras.getString("reason"); String extras = phoneName + "," + reason; } else if (action.equals(WifiManager.NETWORK_STATE_CHANGED_ACTION)) { if (owner.getUsageLimits().getDormantMode() > 0) return; // wifi state change may trigger the event queue to be sent //MMCLogger.logToFile(MMCLogger.Level.DEBUG, "MMCIntentHandlerOld", "NETWORK_STATE_CHANGED_ACTION", ""); owner.wifiStateChange((NetworkInfo) intentExtras.getParcelable(WifiManager.EXTRA_NETWORK_INFO)); owner.trackAccessPoints(0); dataMonitorStats.setWifi(PhoneState.isNetworkWifi(owner)); } else if (action.equals(WIMAX_STATE_CHANGE)) { owner.trackAccessPoints(0); } else if (action.equals(BluetoothDevice.ACTION_ACL_CONNECTED)) { // BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE); // BluetoothClass bclass = device.getBluetoothClass(); // int major = bclass.getMajorDeviceClass(); // if (major == 1024) // owner.setBTHeadsetState(1); // owner.trackAccessPoints(); } else if (action.equals(BluetoothDevice.ACTION_ACL_DISCONNECT_REQUESTED)) { owner.trackAccessPoints(0); } else if (action.equals(BluetoothDevice.ACTION_ACL_DISCONNECTED)) { // BluetoothDevice device = intent.getParcelableExtra(BluetoothDevice.EXTRA_DEVICE); // BluetoothClass bclass = device.getBluetoothClass(); // int major = bclass.getMajorDeviceClass(); // if (major == 1024) // owner.setBTHeadsetState(0); // owner.trackAccessPoints(); } else if (action.equals(Intent.ACTION_HEADSET_PLUG)) { try { int state = intent.getIntExtra("state", -1); owner.setHeadsetState(state); } catch (Exception e) { LoggerUtil.logToFile(LoggerUtil.Level.ERROR, TAG, "onReceive", "error receiving Intent.ACTION_HEADSET_PLUG: " + e); } } else if (action.equals(Intent.ACTION_HEADSET_PLUG)) { int state = intent.getIntExtra("state", -1); owner.setHeadsetState(state); } else if (action.equals(CommonIntentActionsOld.ACTION_START_VOICETEST)) { //this is supposed to trigger a speed test int trigger = intent.getIntExtra(CommonIntentBundleKeysOld.EXTRA_VQ_TRIGGER, 0); owner.getVQManager().runTest(trigger); } else if (action.equals(CommonIntentActionsOld.ACTION_TEST_VQ_DEVICE)) { owner.getVQManager().runTest(10); } else if (action.equals(CommonIntentActionsOld.ACTION_STOP_VOICETEST)) { owner.getVQManager().killTest(); } else if (action.equals(RESTART_MMC_SERVICE)) { owner.restartNextIdle(); } else if (action.equals(STOP_TRACKING_ACTION)) { owner.getEventManager().stopTracking(); } else if (action.equals(Intent.ACTION_SCREEN_OFF)) { try { dataMonitorStats.setScreen(false); SignalEx mmcSignal = new SignalEx(); owner.getPhoneStateListener().processNewMMCSignal(mmcSignal); if (owner.getTravelDetector() != null) { owner.getPhoneState().screenChanged(false); owner.getEventManager().screenChanged(false); } } catch (Exception e) { LoggerUtil.logToFile(LoggerUtil.Level.ERROR, TAG, "onReceive", "received action SCREEN_OFF, calling MainService.processNewMMCSignal()", e); } } else if (action.equals(Intent.ACTION_SCREEN_ON)) { dataMonitorStats.setScreen(true); if (owner.getTravelDetector() != null) { owner.getPhoneState().screenChanged(true); owner.getEventManager().screenChanged(true); } } else if (action.equals(ACTION_ALARM_MINUTE)) { // CPU wakes very briefly only in order to spur cellid updates owner.getTravelDetector().triggerTravelCheck(); QosAPI.checkHostApp(context); } else if (action.equals(ACTION_TRACKING_5MINUTE)) { owner.getTrackingManager().runTracking(); } else if (action.equals(ACTION_TRACKING_1MINUTE)) { LoggerUtil.logToFile(LoggerUtil.Level.DEBUG, TAG, "onReceive", "ACTION_TRACKING_1MINUTE"); owner.getTrackingManager().runTrackingTests(); } else if (action.equals(ACTION_ALARM_3HOUR)) { dataMonitorStats.prepareAllStatistics(); owner.getEventManager().triggerUpdateEvent(true, false); // Calendar cal = Calendar.getInstance(); // int hour = cal.get (Calendar.HOUR_OF_DAY); // //If 12pm to 3 am // if(((hour >= 0 && hour <= 3) || hour == 24) && owner.isNetworkWifi()) { // //See if transit info needs to be downloaded // // //Don't allow the app to shut down until the work is done, keep the CPU running // MMCLogger.logToFile(MMCLogger.Level.DEBUG, TAG, "onReceive", "ACTION_ALARM_3HOUR, wakelock turned on and checking transit " // + "info uptodate at 24-hour: " + hour); // wakeLock.acquire(); // // downloadAreasIfOutOfDate(); // } } // else if(action.equals(ACTION_TRANSIT_DL_DONE)) { // //Allow CPU to move on // if(wakeLock != null) { // wakeLock.release(); // MMCLogger.logToFile(MMCLogger.Level.DEBUG, TAG, "onReceive", "received action ACTION_TRANSIT_DONE, wakelock turned off"); // } // } // else if(action.equals(ACTION_TRANSIT_DL_START)) { // //Don't allow the app to shut down until the work is done, keep the CPU running // MMCLogger.logToFile(MMCLogger.Level.DEBUG, TAG, "onReceive", "ACTION_TRANSIT_DL_START, wakelock turned on and downloading transit if was requested"); // wakeLock.acquire(); // // downloadAreasIfOutOfDate(); // } else if (action.equals(ACTION_ALARM_SCANAPPS)) { int intervalDM = PreferenceManager.getDefaultSharedPreferences(owner) .getInt(PreferenceKeys.Miscellaneous.MANAGE_DATAMONITOR, 0); // run datamonitor if enabled if (intervalDM > 0) { dataMonitorStats.scanApps(); dataMonitorStats.getRunningAppsString(false); // for debug } // Also using this timer for GCM heartbeats (its a 5 minute heartbeat to tell Google Cloud Messaging to check the socket more often for more reliable push messages) // 2 independent timers might wake up device twice as often, doubling the battery impact, so I'm forcing it to use one for both cases // boolean useHeartbeat = PreferenceManager.getDefaultSharedPreferences(owner).getBoolean("KEY_GCM_HEARTBEAT", false); // if (useHeartbeat) { // GcmKeepAlive gcm = new GcmKeepAlive(owner); // gcm.broadcastIntents(); // } } else if (action.equals(ACTION_ALARM_15MINUTE)) { int intervalDM = PreferenceManager.getDefaultSharedPreferences(owner) .getInt(PreferenceKeys.Miscellaneous.MANAGE_DATAMONITOR, 0); // run datamonitor if enabled if (intervalDM > 0) { boolean firstBucketDone = PreferenceManager.getDefaultSharedPreferences(owner) .getBoolean(PreferenceKeys.Miscellaneous.FIRST_BUCKET, false); if (!firstBucketDone) { //if false, first bucket needs to be done dataMonitorStats.firstBucket(); dataMonitorStats.monitor(); PreferenceManager.getDefaultSharedPreferences(owner).edit() .putBoolean(PreferenceKeys.Miscellaneous.FIRST_BUCKET, true).commit(); LoggerUtil.logToFile(LoggerUtil.Level.DEBUG, "MMCIntentHandlerOld", "onReceive", "First bucket at: " + System.currentTimeMillis() / 1000); } else { dataMonitorStats.monitor(); //MMCLogger.logToFile(MMCLogger.Level.DEBUG, "MMCIntentHandlerOld", "onReceive", "15 min bucket at: " + System.currentTimeMillis()/1000); } } // regardless, still make sure GPS is idle unless needed owner.getGpsManager().safeguardGps(); } else if (action.equals(GPS_STATE_ON)) { dataMonitorStats.setGps(true); } else if (action.equals(GPS_STATE_OFF)) { dataMonitorStats.setGps(false); } else if (action.equals(PHONE_CALL_CONNECT)) { dataMonitorStats.setPhone(true); } else if (action.equals(PHONE_CALL_DISCONNECT)) { dataMonitorStats.setPhone(false); } else if (action.equals(HANDOFF)) { dataMonitorStats.handoff(); } else if (action.equals(MANUAL_TRANSIT_START)) { long lat = intent.getIntExtra("latitude", 0); long lon = intent.getIntExtra("longitude", 0); Location location = new Location(""); location.setLatitude(lat / 1000000.0); location.setLongitude(lon / 1000000.0); location.setAccuracy(-3); // PreferenceManager.getDefaultSharedPreferences(owner).edit().putString( // PreferenceKeys.Miscellaneous.SURVEY_COMMAND,).commit(); PreferenceManager.getDefaultSharedPreferences(owner).edit() .putString("transitEvent", String.valueOf(lat) + "," + String.valueOf(lon)).commit(); reportManager.manualTransitEvent = owner.getEventManager().triggerSingletonEvent(EventType.MAN_TRANSIT); reportManager.manualTransitEvent.setLocation(location, 0); owner.getTravelDetector().setTravelling(false); } else if (action.equals(MANUAL_TRANSIT_END)) { if (reportManager.manualTransitEvent == null) return; String accelData = intent.getStringExtra("accelerometer"); int stationFrom = intent.getIntExtra("stationFrom", 0); int stationTo = intent.getIntExtra("stationTo", 0); int duration = intent.getIntExtra("duration", 0); int corrected = intent.getIntExtra("corrected", 0); if (corrected != 0) { Location location = reportManager.manualTransitEvent.getLocation(); location.setAccuracy(-4); } reportManager.manualTransitEvent.setAppData(accelData); //TODO want this to really be in appdata? reportManager.manualTransitEvent.setLookupid1(stationFrom); reportManager.manualTransitEvent.setLookupid2(stationTo); reportManager.manualTransitEvent.setDuration(duration); owner.getEventManager().unstageAndUploadEvent(reportManager.manualTransitEvent, null); reportManager.manualTransitEvent = null; } else if (action.equals(MANUAL_TRANSIT_CANCEL)) { if (reportManager.manualTransitEvent != null) { owner.getEventManager().unstageEvent(reportManager.manualTransitEvent); ReportManager reportManager = ReportManager.getInstance(owner); reportManager.getDBProvider().delete(TablesEnum.LOCATIONS.getContentUri(), "timestamp > ? And accuracy = 3", new String[] { String.valueOf(reportManager.manualTransitEvent.getEventTimestamp()) }); reportManager.manualTransitEvent = null; } } else if (action.equals(MANUAL_PLOTTING_START)) { int floor = intent.getIntExtra("floor", 0); // int type = intent.getIntExtra("type", -1); //1(indoor) or 2(outdoor) int topFloor = intent.getIntExtra("top", -1); int lat = intent.getIntExtra("latitude", -1); int lng = intent.getIntExtra("longitude", -1); long osm_id = intent.getLongExtra("osm_id", 0); String poly = intent.getStringExtra("poly"); reportManager.manualPlottingEvent = owner.getEventManager() .triggerSingletonEvent(EventType.MAN_PLOTTING); reportManager.manualPlottingEvent.setEventIndex(floor); reportManager.manualPlottingEvent.setDuration(topFloor); reportManager.manualPlottingEvent.setBuildingID(osm_id); reportManager.manualPlottingEvent.setAppData(poly); Location location = new Location(""); location.setLatitude(lat / 1000000.0); location.setLongitude(lng / 1000000.0); location.setAccuracy(-1); reportManager.updateEventField(reportManager.manualPlottingEvent.getLocalID(), "latitude", Double.toString(location.getLatitude())); reportManager.updateEventField(reportManager.manualPlottingEvent.getLocalID(), "longitude", Double.toString(location.getLongitude())); reportManager.manualPlottingEvent.setLocation(location, 0); presetEventId(reportManager.manualPlottingEvent); // reserve an EventID for this manual sampling event, to be used for Share links owner.getTravelDetector().setTravelling(false); } else if (action.equals(MANUAL_PLOTTING_END)) { LoggerUtil.logToFile(LoggerUtil.Level.DEBUG, TAG, "onReceive", "MANUAL_PLOTTING_END"); // owner.getEventManager().unstageEvent(manulaPlottingEvent); //does not upload if (reportManager.manualPlottingEvent != null) owner.getEventManager().unstageAndUploadEvent(reportManager.manualPlottingEvent, null); //After the event was submitted, reset it so we don't restore an old event in ManualMapping reportManager.manualPlottingEvent = null; } else if (action.equals(MANUAL_PLOTTING_CANCEL)) { if (reportManager.manualPlottingEvent != null) { reportManager.getDBProvider().delete(TablesEnum.LOCATIONS.getContentUri(), "timestamp > ? And accuracy < 0", new String[] { String.valueOf(reportManager.manualPlottingEvent.getEventTimestamp()) }); reportManager.manualPlottingEvent = null; } } // else if(intent.getAction().equals(MMS_RECEIVED)) { // LoggerUtil.logToFile(LoggerUtil.Level.DEBUG, TAG, "onReceived MMS_RECEIVED", intentExtras.toString()); // } // else if(intent.getAction().equals(MMS_SENT)) { // LoggerUtil.logToFile(LoggerUtil.Level.DEBUG, TAG, "onReceived MMS_SENT", intentExtras.toString()); // } // else if(intent.getAction().equals(SMS_REJECTED)) { // LoggerUtil.logToFile(LoggerUtil.Level.DEBUG, TAG, "onReceived SMS_REJECTED", intentExtras.toString()); // } else if (intent.getAction().equals(SMS_RECEIVED)) { SmsMessage[] msgs = null; // String msg_from; if (intentExtras == null) return; Object[] pdus = (Object[]) intentExtras.get("pdus"); msgs = new SmsMessage[pdus.length]; String[] msgBody = new String[msgs.length]; for (int i = 0; i < msgs.length; i++) { msgs[i] = SmsMessage.createFromPdu((byte[]) pdus[i]); // msg_from = msgs[i].getOriginatingAddress(); String msg = msgs[i].getMessageBody().trim(); if (msg.length() > 10) { msg = msg.substring(1, msg.length() - 1); msg = "{" + msg + "}"; } msgBody[i] = msg; } handleCommands(msgBody, true, 0); } else if (action.equals(VIEWING_SIGNAL)) { owner.setEnggQueryTime(); } else if (intent.getAction().equals(SURVEY)) { if (intentExtras == null) return; int surveyid = intentExtras.getInt(SURVEY_EXTRA); postSurvey(surveyid); } else if (intent.getAction().equals(GCM_MESSAGE)) { if (intentExtras == null) return; try { String msg = intentExtras.getString(GCM_MESSAGE_EXTRA); long starttime = intentExtras.getLong("GCM_STARTTIME_EXTRA"); EventResponse eventResponse = gson.fromJson(msg, EventResponse.class); eventResponse.init(); eventResponse.setStartTime(starttime); eventResponse.handleEventResponse(owner, true); } catch (Exception e) { LoggerUtil.logToFile(LoggerUtil.Level.ERROR, TAG, "onReceived GCM_MESSAGE", "exception", e); } } else if (intent.getAction().equals(COMMAND)) { if (intentExtras == null) return; String commands = intentExtras.getString(COMMAND_EXTRA); if (commands == null) return; long starttime = intent.getLongExtra("STARTTIME_EXTRA", 0); String[] msgs = null; try { JSONArray cmds = new JSONArray(commands); msgs = new String[cmds.length()]; for (int j = 0; j < cmds.length(); j++) msgs[j] = cmds.getJSONObject(j).toString(); } catch (JSONException e) { // TODO Auto-generated catch block //e.printStackTrace(); } //commands = commands.replace("[", ""); //commands = commands.replace("]", ""); //String msgs[] = commands.split("/"); handleCommands(msgs, false, starttime); } else if (intent.getAction().equals(TelephonyManager.ACTION_PHONE_STATE_CHANGED)) { int val = 0; val = intent.getIntExtra("android.telecom.extra.CALL_DISCONNECT_CAUSE", -1); String msg = intent.getStringExtra("android.telecom.extra.CALL_DISCONNECT_CAUSE"); String msg2 = intent.getStringExtra("android.telecom.extra.CALL_DISCONNECT_MESSAGE"); //MMCLogger.logToFile(MMCLogger.Level.ERROR, TAG, "String CALL_DISCONNECT_CAUSE", msg); //MMCLogger.logToFile(MMCLogger.Level.ERROR, TAG, "Int CALL_DISCONNECT_CAUSE", ""+val); } else if (intent.getAction().equals("android.intent.action.NEW_OUTGOING_CALL")) { String phoneNumber = intent.getStringExtra(Intent.EXTRA_PHONE_NUMBER); //if (phoneNumber != null) // MMCLogger.logToFile(MMCLogger.Level.ERROR, TAG, "NEW_OUTGOING_CALL", phoneNumber); } else if (intent.getAction().equals("android.intent.action.PRECISE_CALL_STATE")) { int val = 0; //val = intent.getIntExtra("android.telecom.extra.CALL_DISCONNECT_CAUSE", -1); int state_ringing = intent.getIntExtra("ringing_state", -1); int state_foreground = intent.getIntExtra("foreground_state", -1); int state_background = intent.getIntExtra("background_state", -1); int disconnect_cause = intent.getIntExtra("disconnect_cause", -1); int precise_disconnect_cause = intent.getIntExtra("precise_disconnect_cause", -1); PreciseCallCodes precisecall = new PreciseCallCodes(state_ringing, state_foreground, state_background, disconnect_cause, precise_disconnect_cause); LoggerUtil.logToFile(LoggerUtil.Level.ERROR, TAG, "PRECISE_CALL_STATE", precisecall.toString()); owner.getPhoneStateListener().onPreciseCallState(precisecall); } else if (intent.getAction().equals("android.intent.action.PRECISE_DATA_CONNECTION_STATE_CHANGED")) { int val = 0; //val = intent.getIntExtra("android.telecom.extra.CALL_DISCONNECT_CAUSE", -1); int state = intent.getIntExtra("state", -1); int networkType = intent.getIntExtra("networkType", -1); String reason = intent.getStringExtra("reason"); String failCause = intent.getStringExtra("failCause"); String apnType = intent.getStringExtra("apnType"); String apn = intent.getStringExtra("apn"); Object linkProperties = intent.getParcelableExtra("linkProperties"); if (!apnType.equals("default")) return; // if (failCause != null && failCause.length() > 0) // { // String msg = String.format("state:%d,netType:%d,apnType:%s,reason:%s\r\nfailCause:%s", state,networkType,apnType,reason,failCause); // MMCLogger.logToFile(MMCLogger.Level.ERROR, TAG, "PRECISE_DATA_CONNECTION_STATE_CHANGED", msg); // if (linkProperties != null) // { // msg = String.format("PRECISE_DATA_CONNECTION_STATE_CHANGED linkProperties:%s", linkProperties.toString()); // MMCLogger.logToFile(MMCLogger.Level.ERROR, TAG, "PRECISE_DATA_CONNECTION_STATE_CHANGED", msg); // } // } // else if (reason != null && reason.length() > 0) // { // String msg = String.format("state:%d,netType:%d,apnType:%s,reason:%s\r\nfailCause:%s", state,networkType,apnType,reason,failCause); // MMCLogger.logToFile(MMCLogger.Level.ERROR, TAG, "PRECISE_DATA_CONNECTION_STATE_CHANGED", msg); // if (linkProperties != null) // { // msg = String.format("PRECISE_DATA_CONNECTION_STATE_CHANGED linkProperties:%s", linkProperties.toString()); // MMCLogger.logToFile(MMCLogger.Level.ERROR, TAG, "PRECISE_DATA_CONNECTION_STATE_CHANGED", msg); // } // } } else if (intent.getAction().equals("org.restcomm.android.CONNECT_FAILED") || intent.getAction().equals("org.restcomm.android.CALL_STATE") || intent.getAction().equals("org.restcomm.android.DISCONNECT_ERROR")) { owner.getPhoneStateListener().getRestCommManager().handleIntent(owner, intent); } else if (intent.getAction().equals(ACTION_RADIOLOG_DISCONNECT)) { String time = intent.getStringExtra(EXTRA_RADIOLOG_TIME); String cause = intent.getStringExtra(EXTRA_RADIOLOG_DISC_CAUSE); owner.getPhoneStateListener().onDisconnect(time, cause); } else if (intent.getAction().equals(ACTION_RADIOLOG_CONNECT)) { String time = intent.getStringExtra(EXTRA_RADIOLOG_TIME); String state = intent.getStringExtra(EXTRA_RADIOLOG_CONN_STATE); owner.getPhoneStateListener().onConnect(time, state); } else if (intent.getAction().equals(ACTION_RADIOLOG_NEIGHBORS)) { String time = intent.getStringExtra(EXTRA_RADIOLOG_TIME); String neighbors = intent.getStringExtra(EXTRA_RADIOLOG_NEIGHBORS); //owner.onConnect(time, state); } else if (intent.getAction().equals(ACTION_RADIOLOG_SERVICEMODE)) { String time = intent.getStringExtra(EXTRA_RADIOLOG_TIME); String jsonstr = intent.getStringExtra(EXTRA_RADIOLOG_SVC_JSON); JSONObject json = null; try { json = new JSONObject(jsonstr); } catch (Exception e) { } String values = intent.getStringExtra(EXTRA_RADIOLOG_SVC_TEXT); String name = intent.getStringExtra(EXTRA_RADIOLOG_SVC_NAME); owner.getPhoneStateListener().onServiceMode(time, json, values, name); } else if (intent.getAction().equals(ACTION_RADIOLOG_SERVICEMENU)) { String time = intent.getStringExtra(EXTRA_RADIOLOG_TIME); String values = intent.getStringExtra(EXTRA_RADIOLOG_SVC_TEXT); String name = intent.getStringExtra(EXTRA_RADIOLOG_SVC_NAME); owner.getPhoneStateListener().onServiceMenu(time, values, name); } else if (intent.getAction().equals(ACTION_MMCSYS_VERSION)) { Integer version = intent.getIntExtra(EXTRA_MMCSYS_VERSION, 0); owner.onSvcModeVersion(version); } else if (intent.getAction().equals(ACTION_RADIOLOG_ERROR)) { String error = intent.getStringExtra(EXTRA_RADIOLOG_ERROR); String details = intent.getStringExtra(EXTRA_RADIOLOG_ERROR_DETAIL); LoggerUtil.logToFile(LoggerUtil.Level.ERROR, "RilReader", error, details); //owner.onConnect(time, state); } }
From source file:com.mobilis.android.nfc.activities.MagTekFragment.java
@Override public synchronized void onResume() { super.onResume(); getActivity().registerReceiver(mHeadsetReceiver, new IntentFilter(Intent.ACTION_HEADSET_PLUG)); getActivity().registerReceiver(mNoisyAudioStreamReceiver, new IntentFilter(AudioManager.ACTION_AUDIO_BECOMING_NOISY)); // Performing this check in onResume() covers the case in which BT was // not enabled during onStart(), so we were paused to enable it... // onResume() will be called when ACTION_REQUEST_ENABLE activity // returns./*w w w .j a v a2s . c o m*/ }
From source file:com.xperia64.timidityae.MusicService.java
@Override public void onCreate() { super.onCreate(); if (serviceReceiver != null) { IntentFilter intentFilter = new IntentFilter(); intentFilter.addAction(getResources().getString(R.string.msrv_rec)); intentFilter.addAction(Intent.ACTION_HEADSET_PLUG); intentFilter.addAction(Intent.ACTION_MEDIA_BUTTON); registerReceiver(serviceReceiver, intentFilter); }/*from w w w . j a v a 2 s . c o m*/ pm = (PowerManager) getSystemService(Context.POWER_SERVICE); wl = pm.newWakeLock(PowerManager.PARTIAL_WAKE_LOCK, "Timidity AE"); wl.setReferenceCounted(false); if (shouldDoWidget) ids = AppWidgetManager.getInstance(getApplication()) .getAppWidgetIds(new ComponentName(getApplication(), TimidityAEWidgetProvider.class)); TelephonyManager mgr = (TelephonyManager) getSystemService(TELEPHONY_SERVICE); if (mgr != null) { mgr.listen(phoneStateListener, PhoneStateListener.LISTEN_CALL_STATE); } //foreground=false; if (wl.isHeld()) wl.release(); stopForeground(true); }