Loading services/core/java/com/android/server/BluetoothManagerService.java +27 −22 Original line number Original line Diff line number Diff line Loading @@ -60,6 +60,7 @@ import java.io.IOException; import java.io.PrintWriter; import java.io.PrintWriter; import java.util.HashMap; import java.util.HashMap; import java.util.Map; import java.util.Map; class BluetoothManagerService extends IBluetoothManager.Stub { class BluetoothManagerService extends IBluetoothManager.Stub { private static final String TAG = "BluetoothManagerService"; private static final String TAG = "BluetoothManagerService"; private static final boolean DBG = false; private static final boolean DBG = false; Loading Loading @@ -234,25 +235,6 @@ class BluetoothManagerService extends IBluetoothManager.Stub { sendEnableMsg(mQuietEnableExternal); sendEnableMsg(mQuietEnableExternal); } } } } } else if (Intent.ACTION_USER_SWITCHED.equals(action)) { if (DBG) Log.d(TAG, "Bluetooth user switched"); mHandler.sendMessage(mHandler.obtainMessage(MESSAGE_USER_SWITCHED, intent.getIntExtra(Intent.EXTRA_USER_HANDLE, 0), 0)); } else if (Intent.ACTION_BOOT_COMPLETED.equals(action)) { if (DBG) Log.d(TAG, "Bluetooth boot completed"); synchronized(mReceiver) { if (mEnableExternal && isBluetoothPersistedStateOnBluetooth()) { //Enable if (DBG) Log.d(TAG, "Auto-enabling Bluetooth."); sendEnableMsg(mQuietEnableExternal); } if (!isNameAndAddressSet()) { // Sync the Bluetooth name and address from the // Bluetooth Adapter if (DBG) Log.d(TAG, "Retrieving Bluetooth Adapter name and address..."); getNameAndAddress(); } } } } } } }; }; Loading @@ -277,9 +259,7 @@ class BluetoothManagerService extends IBluetoothManager.Stub { registerForBleScanModeChange(); registerForBleScanModeChange(); mCallbacks = new RemoteCallbackList<IBluetoothManagerCallback>(); mCallbacks = new RemoteCallbackList<IBluetoothManagerCallback>(); mStateChangeCallbacks = new RemoteCallbackList<IBluetoothStateChangeCallback>(); mStateChangeCallbacks = new RemoteCallbackList<IBluetoothStateChangeCallback>(); IntentFilter filter = new IntentFilter(Intent.ACTION_BOOT_COMPLETED); IntentFilter filter = new IntentFilter(BluetoothAdapter.ACTION_LOCAL_NAME_CHANGED); filter.addAction(BluetoothAdapter.ACTION_LOCAL_NAME_CHANGED); filter.addAction(Intent.ACTION_USER_SWITCHED); registerForAirplaneMode(filter); registerForAirplaneMode(filter); filter.setPriority(IntentFilter.SYSTEM_HIGH_PRIORITY); filter.setPriority(IntentFilter.SYSTEM_HIGH_PRIORITY); mContext.registerReceiver(mReceiver, filter); mContext.registerReceiver(mReceiver, filter); Loading Loading @@ -789,6 +769,31 @@ class BluetoothManagerService extends IBluetoothManager.Stub { } } } } /** * Send enable message and set adapter name and address. Called when the boot phase becomes * PHASE_SYSTEM_SERVICES_READY. */ public void handleOnBootPhase() { if (DBG) Log.d(TAG, "Bluetooth boot completed"); if (mEnableExternal && isBluetoothPersistedStateOnBluetooth()) { if (DBG) Log.d(TAG, "Auto-enabling Bluetooth."); sendEnableMsg(mQuietEnableExternal); } if (!isNameAndAddressSet()) { // Sync the Bluetooth name and address from the Bluetooth Adapter if (DBG) Log.d(TAG, "Retrieving Bluetooth Adapter name and address..."); getNameAndAddress(); } } /** * Called when switching to a different foreground user. */ public void handleOnSwitchUser(int userHandle) { if (DBG) Log.d(TAG, "Bluetooth user switched"); mHandler.sendMessage(mHandler.obtainMessage(MESSAGE_USER_SWITCHED, userHandle, 0)); } /** /** * This class manages the clients connected to a given ProfileService * This class manages the clients connected to a given ProfileService * and maintains the connection with that service. * and maintains the connection with that service. Loading services/core/java/com/android/server/BluetoothService.java 0 → 100644 +51 −0 Original line number Original line Diff line number Diff line /* * Copyright (C) 2015 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.server; import android.bluetooth.BluetoothAdapter; import android.content.Context; import android.util.Log; class BluetoothService extends SystemService { private static final String TAG = "BluetoothService"; private BluetoothManagerService mBluetoothManagerService; public BluetoothService(Context context) { super(context); mBluetoothManagerService = new BluetoothManagerService(context); } @Override public void onStart() { Log.d(TAG, "onStart: publishing BluetoothManagerService"); publishBinderService(BluetoothAdapter.BLUETOOTH_MANAGER_SERVICE, mBluetoothManagerService); } @Override public void onBootPhase(int phase) { if (phase == SystemService.PHASE_SYSTEM_SERVICES_READY) { Log.d(TAG, "onBootPhase: PHASE_SYSTEM_SERVICES_READY"); mBluetoothManagerService.handleOnBootPhase(); } } @Override public void onSwitchUser(int userHandle) { Log.d(TAG, "onSwitchUser: switching to user " + userHandle); mBluetoothManagerService.handleOnSwitchUser(userHandle); } } services/java/com/android/server/SystemServer.java +2 −5 Original line number Original line Diff line number Diff line Loading @@ -21,7 +21,6 @@ import android.app.ActivityThread; import android.app.IAlarmManager; import android.app.IAlarmManager; import android.app.INotificationManager; import android.app.INotificationManager; import android.app.usage.UsageStatsManagerInternal; import android.app.usage.UsageStatsManagerInternal; import android.bluetooth.BluetoothAdapter; import android.content.ComponentName; import android.content.ComponentName; import android.content.ContentResolver; import android.content.ContentResolver; import android.content.Context; import android.content.Context; Loading Loading @@ -401,7 +400,6 @@ public final class SystemServer { NetworkScoreService networkScore = null; NetworkScoreService networkScore = null; NsdService serviceDiscovery= null; NsdService serviceDiscovery= null; WindowManagerService wm = null; WindowManagerService wm = null; BluetoothManagerService bluetooth = null; UsbService usb = null; UsbService usb = null; SerialService serial = null; SerialService serial = null; NetworkTimeUpdateService networkTimeUpdater = null; NetworkTimeUpdateService networkTimeUpdater = null; Loading Loading @@ -508,9 +506,8 @@ public final class SystemServer { } else if (disableBluetooth) { } else if (disableBluetooth) { Slog.i(TAG, "Bluetooth Service disabled by config"); Slog.i(TAG, "Bluetooth Service disabled by config"); } else { } else { Slog.i(TAG, "Bluetooth Manager Service"); Slog.i(TAG, "Bluetooth Service"); bluetooth = new BluetoothManagerService(context); mSystemServiceManager.startService(BluetoothService.class); ServiceManager.addService(BluetoothAdapter.BLUETOOTH_MANAGER_SERVICE, bluetooth); } } } catch (RuntimeException e) { } catch (RuntimeException e) { Slog.e("System", "******************************************"); Slog.e("System", "******************************************"); Loading Loading
services/core/java/com/android/server/BluetoothManagerService.java +27 −22 Original line number Original line Diff line number Diff line Loading @@ -60,6 +60,7 @@ import java.io.IOException; import java.io.PrintWriter; import java.io.PrintWriter; import java.util.HashMap; import java.util.HashMap; import java.util.Map; import java.util.Map; class BluetoothManagerService extends IBluetoothManager.Stub { class BluetoothManagerService extends IBluetoothManager.Stub { private static final String TAG = "BluetoothManagerService"; private static final String TAG = "BluetoothManagerService"; private static final boolean DBG = false; private static final boolean DBG = false; Loading Loading @@ -234,25 +235,6 @@ class BluetoothManagerService extends IBluetoothManager.Stub { sendEnableMsg(mQuietEnableExternal); sendEnableMsg(mQuietEnableExternal); } } } } } else if (Intent.ACTION_USER_SWITCHED.equals(action)) { if (DBG) Log.d(TAG, "Bluetooth user switched"); mHandler.sendMessage(mHandler.obtainMessage(MESSAGE_USER_SWITCHED, intent.getIntExtra(Intent.EXTRA_USER_HANDLE, 0), 0)); } else if (Intent.ACTION_BOOT_COMPLETED.equals(action)) { if (DBG) Log.d(TAG, "Bluetooth boot completed"); synchronized(mReceiver) { if (mEnableExternal && isBluetoothPersistedStateOnBluetooth()) { //Enable if (DBG) Log.d(TAG, "Auto-enabling Bluetooth."); sendEnableMsg(mQuietEnableExternal); } if (!isNameAndAddressSet()) { // Sync the Bluetooth name and address from the // Bluetooth Adapter if (DBG) Log.d(TAG, "Retrieving Bluetooth Adapter name and address..."); getNameAndAddress(); } } } } } } }; }; Loading @@ -277,9 +259,7 @@ class BluetoothManagerService extends IBluetoothManager.Stub { registerForBleScanModeChange(); registerForBleScanModeChange(); mCallbacks = new RemoteCallbackList<IBluetoothManagerCallback>(); mCallbacks = new RemoteCallbackList<IBluetoothManagerCallback>(); mStateChangeCallbacks = new RemoteCallbackList<IBluetoothStateChangeCallback>(); mStateChangeCallbacks = new RemoteCallbackList<IBluetoothStateChangeCallback>(); IntentFilter filter = new IntentFilter(Intent.ACTION_BOOT_COMPLETED); IntentFilter filter = new IntentFilter(BluetoothAdapter.ACTION_LOCAL_NAME_CHANGED); filter.addAction(BluetoothAdapter.ACTION_LOCAL_NAME_CHANGED); filter.addAction(Intent.ACTION_USER_SWITCHED); registerForAirplaneMode(filter); registerForAirplaneMode(filter); filter.setPriority(IntentFilter.SYSTEM_HIGH_PRIORITY); filter.setPriority(IntentFilter.SYSTEM_HIGH_PRIORITY); mContext.registerReceiver(mReceiver, filter); mContext.registerReceiver(mReceiver, filter); Loading Loading @@ -789,6 +769,31 @@ class BluetoothManagerService extends IBluetoothManager.Stub { } } } } /** * Send enable message and set adapter name and address. Called when the boot phase becomes * PHASE_SYSTEM_SERVICES_READY. */ public void handleOnBootPhase() { if (DBG) Log.d(TAG, "Bluetooth boot completed"); if (mEnableExternal && isBluetoothPersistedStateOnBluetooth()) { if (DBG) Log.d(TAG, "Auto-enabling Bluetooth."); sendEnableMsg(mQuietEnableExternal); } if (!isNameAndAddressSet()) { // Sync the Bluetooth name and address from the Bluetooth Adapter if (DBG) Log.d(TAG, "Retrieving Bluetooth Adapter name and address..."); getNameAndAddress(); } } /** * Called when switching to a different foreground user. */ public void handleOnSwitchUser(int userHandle) { if (DBG) Log.d(TAG, "Bluetooth user switched"); mHandler.sendMessage(mHandler.obtainMessage(MESSAGE_USER_SWITCHED, userHandle, 0)); } /** /** * This class manages the clients connected to a given ProfileService * This class manages the clients connected to a given ProfileService * and maintains the connection with that service. * and maintains the connection with that service. Loading
services/core/java/com/android/server/BluetoothService.java 0 → 100644 +51 −0 Original line number Original line Diff line number Diff line /* * Copyright (C) 2015 The Android Open Source Project * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package com.android.server; import android.bluetooth.BluetoothAdapter; import android.content.Context; import android.util.Log; class BluetoothService extends SystemService { private static final String TAG = "BluetoothService"; private BluetoothManagerService mBluetoothManagerService; public BluetoothService(Context context) { super(context); mBluetoothManagerService = new BluetoothManagerService(context); } @Override public void onStart() { Log.d(TAG, "onStart: publishing BluetoothManagerService"); publishBinderService(BluetoothAdapter.BLUETOOTH_MANAGER_SERVICE, mBluetoothManagerService); } @Override public void onBootPhase(int phase) { if (phase == SystemService.PHASE_SYSTEM_SERVICES_READY) { Log.d(TAG, "onBootPhase: PHASE_SYSTEM_SERVICES_READY"); mBluetoothManagerService.handleOnBootPhase(); } } @Override public void onSwitchUser(int userHandle) { Log.d(TAG, "onSwitchUser: switching to user " + userHandle); mBluetoothManagerService.handleOnSwitchUser(userHandle); } }
services/java/com/android/server/SystemServer.java +2 −5 Original line number Original line Diff line number Diff line Loading @@ -21,7 +21,6 @@ import android.app.ActivityThread; import android.app.IAlarmManager; import android.app.IAlarmManager; import android.app.INotificationManager; import android.app.INotificationManager; import android.app.usage.UsageStatsManagerInternal; import android.app.usage.UsageStatsManagerInternal; import android.bluetooth.BluetoothAdapter; import android.content.ComponentName; import android.content.ComponentName; import android.content.ContentResolver; import android.content.ContentResolver; import android.content.Context; import android.content.Context; Loading Loading @@ -401,7 +400,6 @@ public final class SystemServer { NetworkScoreService networkScore = null; NetworkScoreService networkScore = null; NsdService serviceDiscovery= null; NsdService serviceDiscovery= null; WindowManagerService wm = null; WindowManagerService wm = null; BluetoothManagerService bluetooth = null; UsbService usb = null; UsbService usb = null; SerialService serial = null; SerialService serial = null; NetworkTimeUpdateService networkTimeUpdater = null; NetworkTimeUpdateService networkTimeUpdater = null; Loading Loading @@ -508,9 +506,8 @@ public final class SystemServer { } else if (disableBluetooth) { } else if (disableBluetooth) { Slog.i(TAG, "Bluetooth Service disabled by config"); Slog.i(TAG, "Bluetooth Service disabled by config"); } else { } else { Slog.i(TAG, "Bluetooth Manager Service"); Slog.i(TAG, "Bluetooth Service"); bluetooth = new BluetoothManagerService(context); mSystemServiceManager.startService(BluetoothService.class); ServiceManager.addService(BluetoothAdapter.BLUETOOTH_MANAGER_SERVICE, bluetooth); } } } catch (RuntimeException e) { } catch (RuntimeException e) { Slog.e("System", "******************************************"); Slog.e("System", "******************************************"); Loading