Loading src/com/android/settings/applications/appinfo/AppInfoDashboardFragment.java +5 −27 Original line number Diff line number Diff line Loading @@ -19,7 +19,6 @@ package com.android.settings.applications.appinfo; import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin; import android.app.Activity; import android.app.ActivityManager; import android.app.admin.DevicePolicyManager; import android.app.settings.SettingsEnums; import android.content.BroadcastReceiver; Loading Loading @@ -183,10 +182,6 @@ public class AppInfoDashboardFragment extends DashboardFragment super.onCreate(icicle); mFinishing = false; final Activity activity = getActivity(); if (isLockTaskModePinned(activity)) { finishActivity(activity); return; } mDpm = (DevicePolicyManager) activity.getSystemService(Context.DEVICE_POLICY_SERVICE); mUserManager = (UserManager) activity.getSystemService(Context.USER_SERVICE); mPm = activity.getPackageManager(); Loading @@ -197,6 +192,7 @@ public class AppInfoDashboardFragment extends DashboardFragment return; } startListeningToPackageRemove(); setHasOptionsMenu(true); } Loading Loading @@ -318,8 +314,9 @@ public class AppInfoDashboardFragment extends DashboardFragment @VisibleForTesting boolean ensurePackageInfoAvailable(Activity activity) { if (mPackageInfo == null) { mFinishing = true; Log.w(TAG, "Package info not available. Is this package already uninstalled?"); finishActivity(activity); activity.finishAndRemoveTask(); return false; } return true; Loading @@ -334,28 +331,14 @@ public class AppInfoDashboardFragment extends DashboardFragment @VisibleForTesting boolean ensureDisplayableModule(Activity activity) { if (AppUtils.isHiddenSystemModule(activity.getApplicationContext(), mPackageName)) { mFinishing = true; Log.w(TAG, "Package is hidden module, exiting: " + mPackageName); finishActivity(activity); activity.finishAndRemoveTask(); return false; } return true; } /** * Check the state of device lock task mode. * * @return true if the device lock task mode pinned. */ @VisibleForTesting boolean isLockTaskModePinned(Activity activity) { ActivityManager activityManager = activity.getSystemService(ActivityManager.class); if (activityManager.getLockTaskModeState() == ActivityManager.LOCK_TASK_MODE_PINNED) { Log.w(TAG, "Device lock task mode pinned."); return true; } return false; } @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { super.onCreateOptionsMenu(menu, inflater); Loading Loading @@ -654,11 +637,6 @@ public class AppInfoDashboardFragment extends DashboardFragment getContext().unregisterReceiver(mPackageRemovedReceiver); } private void finishActivity(Activity activity) { mFinishing = true; activity.finishAndRemoveTask(); } @VisibleForTesting final BroadcastReceiver mPackageRemovedReceiver = new BroadcastReceiver() { @Override Loading tests/robotests/src/com/android/settings/applications/appinfo/AppInfoDashboardFragmentTest.java +5 −16 Original line number Diff line number Diff line Loading @@ -33,7 +33,6 @@ import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.app.ActivityManager; import android.app.admin.DevicePolicyManager; import android.content.Context; import android.content.Intent; Loading Loading @@ -87,8 +86,6 @@ public final class AppInfoDashboardFragmentTest { private DevicePolicyManager mDevicePolicyManager; @Mock private PackageManager mPackageManager; @Mock private ActivityManager mActivityManager; private AppInfoDashboardFragment mFragment; private Context mShadowContext; Loading @@ -96,13 +93,11 @@ public final class AppInfoDashboardFragmentTest { @Before public void setUp() { MockitoAnnotations.initMocks(this); mShadowContext = spy(RuntimeEnvironment.application); mShadowContext = RuntimeEnvironment.application; mFragment = spy(new AppInfoDashboardFragment()); doReturn(mActivity).when(mFragment).getActivity(); doReturn(mShadowContext).when(mFragment).getContext(); doReturn(mPackageManager).when(mActivity).getPackageManager(); doReturn(mShadowContext).when(mActivity).getApplicationContext(); doReturn(mActivityManager).when(mActivity).getSystemService(ActivityManager.class); when(mUserManager.isAdminUser()).thenReturn(true); ReflectionHelpers.setField(mFragment, "mUserManager", mUserManager); Loading Loading @@ -207,6 +202,7 @@ public final class AppInfoDashboardFragmentTest { ShadowAppUtils.addHiddenModule(PACKAGE_NAME); ReflectionHelpers.setField(mFragment, "mPackageName", PACKAGE_NAME); assertThat(mFragment.ensureDisplayableModule(mActivity)).isFalse(); } Loading @@ -218,14 +214,6 @@ public final class AppInfoDashboardFragmentTest { assertThat(mFragment.ensureDisplayableModule(mActivity)).isTrue(); } @Test public void isLockTaskModePinned_pinned_shouldReturnTrue() { doReturn(ActivityManager.LOCK_TASK_MODE_PINNED).when( mActivityManager).getLockTaskModeState(); assertThat(mFragment.isLockTaskModePinned(mActivity)).isTrue(); } @Test public void createPreference_hasNoPackageInfo_shouldSkip() { ReflectionHelpers.setField(mFragment, "mPackageInfo", null); Loading Loading @@ -279,7 +267,8 @@ public final class AppInfoDashboardFragmentTest { public void onActivityResult_uninstalledUpdates_shouldInvalidateOptionsMenu() { doReturn(true).when(mFragment).refreshUi(); mFragment.onActivityResult(AppInfoDashboardFragment.REQUEST_UNINSTALL, 0, mFragment .onActivityResult(AppInfoDashboardFragment.REQUEST_UNINSTALL, 0, mock(Intent.class)); verify(mActivity).invalidateOptionsMenu(); Loading Loading
src/com/android/settings/applications/appinfo/AppInfoDashboardFragment.java +5 −27 Original line number Diff line number Diff line Loading @@ -19,7 +19,6 @@ package com.android.settings.applications.appinfo; import static com.android.settingslib.RestrictedLockUtils.EnforcedAdmin; import android.app.Activity; import android.app.ActivityManager; import android.app.admin.DevicePolicyManager; import android.app.settings.SettingsEnums; import android.content.BroadcastReceiver; Loading Loading @@ -183,10 +182,6 @@ public class AppInfoDashboardFragment extends DashboardFragment super.onCreate(icicle); mFinishing = false; final Activity activity = getActivity(); if (isLockTaskModePinned(activity)) { finishActivity(activity); return; } mDpm = (DevicePolicyManager) activity.getSystemService(Context.DEVICE_POLICY_SERVICE); mUserManager = (UserManager) activity.getSystemService(Context.USER_SERVICE); mPm = activity.getPackageManager(); Loading @@ -197,6 +192,7 @@ public class AppInfoDashboardFragment extends DashboardFragment return; } startListeningToPackageRemove(); setHasOptionsMenu(true); } Loading Loading @@ -318,8 +314,9 @@ public class AppInfoDashboardFragment extends DashboardFragment @VisibleForTesting boolean ensurePackageInfoAvailable(Activity activity) { if (mPackageInfo == null) { mFinishing = true; Log.w(TAG, "Package info not available. Is this package already uninstalled?"); finishActivity(activity); activity.finishAndRemoveTask(); return false; } return true; Loading @@ -334,28 +331,14 @@ public class AppInfoDashboardFragment extends DashboardFragment @VisibleForTesting boolean ensureDisplayableModule(Activity activity) { if (AppUtils.isHiddenSystemModule(activity.getApplicationContext(), mPackageName)) { mFinishing = true; Log.w(TAG, "Package is hidden module, exiting: " + mPackageName); finishActivity(activity); activity.finishAndRemoveTask(); return false; } return true; } /** * Check the state of device lock task mode. * * @return true if the device lock task mode pinned. */ @VisibleForTesting boolean isLockTaskModePinned(Activity activity) { ActivityManager activityManager = activity.getSystemService(ActivityManager.class); if (activityManager.getLockTaskModeState() == ActivityManager.LOCK_TASK_MODE_PINNED) { Log.w(TAG, "Device lock task mode pinned."); return true; } return false; } @Override public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) { super.onCreateOptionsMenu(menu, inflater); Loading Loading @@ -654,11 +637,6 @@ public class AppInfoDashboardFragment extends DashboardFragment getContext().unregisterReceiver(mPackageRemovedReceiver); } private void finishActivity(Activity activity) { mFinishing = true; activity.finishAndRemoveTask(); } @VisibleForTesting final BroadcastReceiver mPackageRemovedReceiver = new BroadcastReceiver() { @Override Loading
tests/robotests/src/com/android/settings/applications/appinfo/AppInfoDashboardFragmentTest.java +5 −16 Original line number Diff line number Diff line Loading @@ -33,7 +33,6 @@ import static org.mockito.Mockito.times; import static org.mockito.Mockito.verify; import static org.mockito.Mockito.when; import android.app.ActivityManager; import android.app.admin.DevicePolicyManager; import android.content.Context; import android.content.Intent; Loading Loading @@ -87,8 +86,6 @@ public final class AppInfoDashboardFragmentTest { private DevicePolicyManager mDevicePolicyManager; @Mock private PackageManager mPackageManager; @Mock private ActivityManager mActivityManager; private AppInfoDashboardFragment mFragment; private Context mShadowContext; Loading @@ -96,13 +93,11 @@ public final class AppInfoDashboardFragmentTest { @Before public void setUp() { MockitoAnnotations.initMocks(this); mShadowContext = spy(RuntimeEnvironment.application); mShadowContext = RuntimeEnvironment.application; mFragment = spy(new AppInfoDashboardFragment()); doReturn(mActivity).when(mFragment).getActivity(); doReturn(mShadowContext).when(mFragment).getContext(); doReturn(mPackageManager).when(mActivity).getPackageManager(); doReturn(mShadowContext).when(mActivity).getApplicationContext(); doReturn(mActivityManager).when(mActivity).getSystemService(ActivityManager.class); when(mUserManager.isAdminUser()).thenReturn(true); ReflectionHelpers.setField(mFragment, "mUserManager", mUserManager); Loading Loading @@ -207,6 +202,7 @@ public final class AppInfoDashboardFragmentTest { ShadowAppUtils.addHiddenModule(PACKAGE_NAME); ReflectionHelpers.setField(mFragment, "mPackageName", PACKAGE_NAME); assertThat(mFragment.ensureDisplayableModule(mActivity)).isFalse(); } Loading @@ -218,14 +214,6 @@ public final class AppInfoDashboardFragmentTest { assertThat(mFragment.ensureDisplayableModule(mActivity)).isTrue(); } @Test public void isLockTaskModePinned_pinned_shouldReturnTrue() { doReturn(ActivityManager.LOCK_TASK_MODE_PINNED).when( mActivityManager).getLockTaskModeState(); assertThat(mFragment.isLockTaskModePinned(mActivity)).isTrue(); } @Test public void createPreference_hasNoPackageInfo_shouldSkip() { ReflectionHelpers.setField(mFragment, "mPackageInfo", null); Loading Loading @@ -279,7 +267,8 @@ public final class AppInfoDashboardFragmentTest { public void onActivityResult_uninstalledUpdates_shouldInvalidateOptionsMenu() { doReturn(true).when(mFragment).refreshUi(); mFragment.onActivityResult(AppInfoDashboardFragment.REQUEST_UNINSTALL, 0, mFragment .onActivityResult(AppInfoDashboardFragment.REQUEST_UNINSTALL, 0, mock(Intent.class)); verify(mActivity).invalidateOptionsMenu(); Loading