From 3bd4771ccb6f05c30cf7de6b2092f4f580821b56 Mon Sep 17 00:00:00 2001 From: Ricky Wai Date: Fri, 11 Mar 2016 09:06:02 +0000 Subject: [PATCH] Fix location settings crash when work profile is disabled Bug: 27402597 Change-Id: Iab5f999b67e9f81977142648f90cf31acb8b5f69 --- .../android/settings/location/SettingsInjector.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/com/android/settings/location/SettingsInjector.java b/src/com/android/settings/location/SettingsInjector.java index 77840fa296e..18697b80dc5 100644 --- a/src/com/android/settings/location/SettingsInjector.java +++ b/src/com/android/settings/location/SettingsInjector.java @@ -16,6 +16,7 @@ package com.android.settings.location; +import android.app.ActivityManager; import android.content.Context; import android.content.Intent; import android.content.pm.ApplicationInfo; @@ -474,6 +475,15 @@ class SettingsInjector { * preference when the service replies. */ public void startService() { + final ActivityManager am = (ActivityManager) + mContext.getSystemService(Context.ACTIVITY_SERVICE); + if (!am.isUserRunning(setting.mUserHandle.getIdentifier())) { + if (Log.isLoggable(TAG, Log.VERBOSE)) { + Log.v(TAG, "Cannot start service as user " + + setting.mUserHandle.getIdentifier() + " is not running"); + } + return; + } Handler handler = new Handler() { @Override public void handleMessage(Message msg) {