List of usage examples for android.content.pm PackageManager DONT_KILL_APP
int DONT_KILL_APP
To view the source code for android.content.pm PackageManager DONT_KILL_APP.
Click Source Link
From source file:es.javocsoft.android.lib.toolbox.ToolBox.java
private static void application_activityAliasStatusSwitch(Context context, Class appClass, String appLaunchAlias, int status) { ComponentName component = new ComponentName(appClass.getPackage().getName(), appClass.getPackage().getName() + "." + appLaunchAlias); if (status == PackageManager.COMPONENT_ENABLED_STATE_DISABLED && (context.getPackageManager() .getComponentEnabledSetting(component) == PackageManager.COMPONENT_ENABLED_STATE_ENABLED || context.getPackageManager() .getComponentEnabledSetting(component) == PackageManager.COMPONENT_ENABLED_STATE_DEFAULT)) { context.getPackageManager().setComponentEnabledSetting(component, PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP); } else if (status == PackageManager.COMPONENT_ENABLED_STATE_ENABLED && (context.getPackageManager() .getComponentEnabledSetting(component) == PackageManager.COMPONENT_ENABLED_STATE_DISABLED || context.getPackageManager() .getComponentEnabledSetting(component) == PackageManager.COMPONENT_ENABLED_STATE_DEFAULT)) { context.getPackageManager().setComponentEnabledSetting(component, PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP); }//from w w w . jav a 2s . co m }
From source file:com.google.android.marvin.mytalkback.TalkBackService.java
/** * Registers listeners, sets service info, loads preferences. This should be * called from {@link #onServiceConnected} and when TalkBack resumes from a * suspended state./*from w w w.j a va 2 s . c o m*/ */ private void resumeInfrastructure() { if (isServiceActive()) { LogUtils.log(this, Log.ERROR, "Attempted to resume while not suspended"); return; } setServiceState(ServiceState.ACTIVE); stopForeground(true); final AccessibilityServiceInfo info = new AccessibilityServiceInfo(); info.eventTypes = AccessibilityEvent.TYPES_ALL_MASK; info.feedbackType |= AccessibilityServiceInfo.FEEDBACK_SPOKEN; info.feedbackType |= AccessibilityServiceInfo.FEEDBACK_AUDIBLE; info.feedbackType |= AccessibilityServiceInfo.FEEDBACK_HAPTIC; info.flags |= AccessibilityServiceInfo.DEFAULT; info.flags |= AccessibilityServiceInfoCompatUtils.FLAG_REQUEST_ENHANCED_WEB_ACCESSIBILITY; info.flags |= AccessibilityServiceInfoCompatUtils.FLAG_REPORT_VIEW_IDS; info.flags |= AccessibilityServiceInfoCompatUtils.FLAG_REQUEST_FILTER_KEY_EVENTS; info.notificationTimeout = 0; // Ensure the initial touch exploration request mode is correct. if (SUPPORTS_TOUCH_PREF && SharedPreferencesUtils.getBooleanPref(mPrefs, getResources(), R.string.pref_explore_by_touch_key, R.bool.pref_explore_by_touch_default)) { info.flags |= AccessibilityServiceInfoCompatUtils.FLAG_REQUEST_TOUCH_EXPLORATION_MODE; } setServiceInfo(info); if (mCallStateMonitor != null) { registerReceiver(mCallStateMonitor, mCallStateMonitor.getFilter()); } if (mRingerModeAndScreenMonitor != null) { registerReceiver(mRingerModeAndScreenMonitor, mRingerModeAndScreenMonitor.getFilter()); } if (mTextToSpeechManager != null) { mTextToSpeechManager.startDiscovery(); } if (mRadialMenuManager != null) { registerReceiver(mRadialMenuManager, mRadialMenuManager.getFilter()); } if (mVolumeMonitor != null) { registerReceiver(mVolumeMonitor, mVolumeMonitor.getFilter()); } mPrefs.registerOnSharedPreferenceChangeListener(mSharedPreferenceChangeListener); // Add the broadcast listener for gestures. final IntentFilter filter = new IntentFilter(); filter.addAction(ACTION_PERFORM_GESTURE); registerReceiver(mActiveReceiver, filter, PERMISSION_TALKBACK, null); // Enable the proxy activity for long-press search. final PackageManager packageManager = getPackageManager(); final ComponentName shortcutProxy = new ComponentName(this, ShortcutProxyActivity.class); packageManager.setComponentEnabledSetting(shortcutProxy, PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP); reloadPreferences(); }
From source file:com.google.android.marvin.mytalkback.TalkBackService.java
/** * Registers listeners, sets service info, loads preferences. This should be * called from {@link #onServiceConnected} and when TalkBack resumes from a * suspended state.//from w w w. j a v a 2s .c om */ private void suspendInfrastructure() { if (!isServiceActive()) { LogUtils.log(this, Log.ERROR, "Attempted to suspend while already suspended"); return; } interruptAllFeedback(); setServiceState(ServiceState.SUSPENDED); setServiceInfo(new AccessibilityServiceInfo()); mPrefs.unregisterOnSharedPreferenceChangeListener(mSharedPreferenceChangeListener); unregisterReceiver(mActiveReceiver); if (mCallStateMonitor != null) { unregisterReceiver(mCallStateMonitor); } if (mRingerModeAndScreenMonitor != null) { unregisterReceiver(mRingerModeAndScreenMonitor); } if (mRadialMenuManager != null) { unregisterReceiver(mRadialMenuManager); mRadialMenuManager.clearCache(); } if (mVolumeMonitor != null) { unregisterReceiver(mVolumeMonitor); mVolumeMonitor.releaseControl(); } if (mShakeDetector != null) { mShakeDetector.setEnabled(false); } if (SUPPORTS_TOUCH_PREF) { final ContentResolver resolver = getContentResolver(); resolver.unregisterContentObserver(mTouchExploreObserver); } // Disable the proxy activity for long-press search. final PackageManager packageManager = getPackageManager(); final ComponentName shortcutProxy = new ComponentName(this, ShortcutProxyActivity.class); packageManager.setComponentEnabledSetting(shortcutProxy, PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP); // Remove any pending notifications that shouldn't persist. final NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); nm.cancelAll(); if (mTtsOverlay != null) { mTtsOverlay.hide(); } }
From source file:com.google.android.marvin.talkback.TalkBackService.java
/** * Registers listeners, sets service info, loads preferences. This should be * called from {@link #onServiceConnected} and when TalkBack resumes from a * suspended state./*from w w w . j ava 2 s. c om*/ */ private void resumeInfrastructure() { if (isServiceActive()) { LogUtils.log(this, Log.ERROR, "Attempted to resume while not suspended"); return; } setServiceState(ServiceState.ACTIVE); stopForeground(true); final AccessibilityServiceInfo info = new AccessibilityServiceInfo(); info.eventTypes = AccessibilityEvent.TYPES_ALL_MASK; info.feedbackType |= AccessibilityServiceInfo.FEEDBACK_SPOKEN; info.feedbackType |= AccessibilityServiceInfo.FEEDBACK_AUDIBLE; info.feedbackType |= AccessibilityServiceInfo.FEEDBACK_HAPTIC; info.flags |= AccessibilityServiceInfo.DEFAULT; info.flags |= AccessibilityServiceInfoCompatUtils.FLAG_REQUEST_ENHANCED_WEB_ACCESSIBILITY; info.flags |= AccessibilityServiceInfoCompatUtils.FLAG_REPORT_VIEW_IDS; info.flags |= AccessibilityServiceInfoCompatUtils.FLAG_REQUEST_FILTER_KEY_EVENTS; info.notificationTimeout = 0; // Ensure the initial touch exploration request mode is correct. if (SUPPORTS_TOUCH_PREF && SharedPreferencesUtils.getBooleanPref(mPrefs, getResources(), R.string.pref_explore_by_touch_key, R.bool.pref_explore_by_touch_default)) { info.flags |= AccessibilityServiceInfoCompatUtils.FLAG_REQUEST_TOUCH_EXPLORATION_MODE; } setServiceInfo(info); if (mCallStateMonitor != null) { registerReceiver(mCallStateMonitor, mCallStateMonitor.getFilter()); } if (mRingerModeAndScreenMonitor != null) { registerReceiver(mRingerModeAndScreenMonitor, mRingerModeAndScreenMonitor.getFilter()); } if (mTextToSpeechManager != null) { mTextToSpeechManager.startDiscovery(); } if (mRadialMenuManager != null) { registerReceiver(mRadialMenuManager, mRadialMenuManager.getFilter()); } if (mVolumeMonitor != null) { registerReceiver(mVolumeMonitor, mVolumeMonitor.getFilter()); } if (mPackageReceiver != null) { registerReceiver(mPackageReceiver, mPackageReceiver.getFilter()); if (mLabelManager != null) { mLabelManager.ensureDataConsistency(); } } mPrefs.registerOnSharedPreferenceChangeListener(mSharedPreferenceChangeListener); // Add the broadcast listener for gestures. final IntentFilter filter = new IntentFilter(); filter.addAction(ACTION_PERFORM_GESTURE_ACTION); registerReceiver(mActiveReceiver, filter, PERMISSION_TALKBACK, null); // Enable the proxy activity for long-press search. final PackageManager packageManager = getPackageManager(); final ComponentName shortcutProxy = new ComponentName(this, ShortcutProxyActivity.class); packageManager.setComponentEnabledSetting(shortcutProxy, PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP); reloadPreferences(); }
From source file:com.google.android.marvin.screenspeak.ScreenSpeakService.java
/** * Registers listeners, sets service info, loads preferences. This should be * called from {@link #onServiceConnected} and when ScreenSpeak resumes from a * suspended state./* w ww . j a v a 2 s . c o m*/ */ private void resumeInfrastructure() { if (isServiceActive()) { if (LogUtils.LOG_LEVEL <= Log.ERROR) { Log.e(LOGTAG, "Attempted to resume while not suspended"); } return; } setServiceState(SERVICE_STATE_ACTIVE); stopForeground(true); final AccessibilityServiceInfo info = new AccessibilityServiceInfo(); info.eventTypes = AccessibilityEvent.TYPES_ALL_MASK; info.feedbackType |= AccessibilityServiceInfo.FEEDBACK_SPOKEN; info.feedbackType |= AccessibilityServiceInfo.FEEDBACK_AUDIBLE; info.feedbackType |= AccessibilityServiceInfo.FEEDBACK_HAPTIC; info.flags |= AccessibilityServiceInfo.DEFAULT; if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR2) { info.flags |= AccessibilityServiceInfo.FLAG_REQUEST_ENHANCED_WEB_ACCESSIBILITY; info.flags |= AccessibilityServiceInfo.FLAG_REPORT_VIEW_IDS; info.flags |= AccessibilityServiceInfo.FLAG_REQUEST_FILTER_KEY_EVENTS; } if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP_MR1) { info.flags |= AccessibilityServiceInfo.FLAG_RETRIEVE_INTERACTIVE_WINDOWS; } info.notificationTimeout = 0; // Ensure the initial touch exploration request mode is correct. if (mSupportsTouchScreen && SharedPreferencesUtils.getBooleanPref(mPrefs, getResources(), R.string.pref_explore_by_touch_key, R.bool.pref_explore_by_touch_default)) { info.flags |= AccessibilityServiceInfo.FLAG_REQUEST_TOUCH_EXPLORATION_MODE; } setServiceInfo(info); if (mRingerModeAndScreenMonitor != null) { registerReceiver(mRingerModeAndScreenMonitor, mRingerModeAndScreenMonitor.getFilter()); // It could now be confused with the current screen state mRingerModeAndScreenMonitor.updateScreenState(); } if (mVolumeMonitor != null) { registerReceiver(mVolumeMonitor, mVolumeMonitor.getFilter()); } if (mBatteryMonitor != null) { registerReceiver(mBatteryMonitor, mBatteryMonitor.getFilter()); } if (mPackageReceiver != null) { registerReceiver(mPackageReceiver, mPackageReceiver.getFilter()); if (mLabelManager != null) { mLabelManager.ensureDataConsistency(); } } if (mSideTapManager != null) { registerReceiver(mSideTapManager, SideTapManager.getFilter()); } mPrefs.registerOnSharedPreferenceChangeListener(mSharedPreferenceChangeListener); // Add the broadcast listener for gestures. final IntentFilter filter = new IntentFilter(); filter.addAction(ACTION_PERFORM_GESTURE_ACTION); registerReceiver(mActiveReceiver, filter, PERMISSION_SCREENSPEAK, null); // Enable the proxy activity for long-press search. final PackageManager packageManager = getPackageManager(); final ComponentName shortcutProxy = new ComponentName(this, ShortcutProxyActivity.class); packageManager.setComponentEnabledSetting(shortcutProxy, PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP); reloadPreferences(); if (mDimScreenController.isDimmingEnabled()) { mDimScreenController.makeScreenDim(); } }
From source file:com.nbplus.vbroadlauncher.HomeLauncherActivity.java
protected void resetPreferredLauncherAndOpenChooser() { PackageManager packageManager = getPackageManager(); ComponentName componentName = new ComponentName(this, HomeLauncherActivity.class); packageManager.setComponentEnabledSetting(componentName, PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP); // Intent selector = new Intent(Intent.ACTION_MAIN); // selector.addCategory(Intent.CATEGORY_HOME); // selector.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); // startActivity(selector); // Intent fakeIntent = new Intent(); // fakeIntent.setAction(Intent.ACTION_MAIN); // fakeIntent.addCategory(Intent.CATEGORY_HOME); // fakeIntent.addFlags(Intent.FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS // | Intent.FLAG_ACTIVITY_FORWARD_RESULT // | Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_PREVIOUS_IS_TOP // | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED); // startActivity(fakeIntent); packageManager.setComponentEnabledSetting(componentName, PackageManager.COMPONENT_ENABLED_STATE_DEFAULT, PackageManager.DONT_KILL_APP); }
From source file:com.google.android.marvin.talkback.TalkBackService.java
/** * Registers listeners, sets service info, loads preferences. This should be * called from {@link #onServiceConnected} and when TalkBack resumes from a * suspended state.//from w ww.j a va 2s. c om */ private void suspendInfrastructure() { if (!isServiceActive()) { LogUtils.log(this, Log.ERROR, "Attempted to suspend while already suspended"); return; } interruptAllFeedback(); setServiceState(ServiceState.SUSPENDED); setServiceInfo(new AccessibilityServiceInfo()); mPrefs.unregisterOnSharedPreferenceChangeListener(mSharedPreferenceChangeListener); unregisterReceiver(mActiveReceiver); if (mCallStateMonitor != null) { unregisterReceiver(mCallStateMonitor); } if (mRingerModeAndScreenMonitor != null) { unregisterReceiver(mRingerModeAndScreenMonitor); } if (mRadialMenuManager != null) { unregisterReceiver(mRadialMenuManager); mRadialMenuManager.clearCache(); } if (mVolumeMonitor != null) { unregisterReceiver(mVolumeMonitor); mVolumeMonitor.releaseControl(); } if (mPackageReceiver != null) { unregisterReceiver(mPackageReceiver); } if (mShakeDetector != null) { mShakeDetector.setEnabled(false); } if (SUPPORTS_TOUCH_PREF) { final ContentResolver resolver = getContentResolver(); resolver.unregisterContentObserver(mTouchExploreObserver); } // Disable the proxy activity for long-press search. final PackageManager packageManager = getPackageManager(); final ComponentName shortcutProxy = new ComponentName(this, ShortcutProxyActivity.class); packageManager.setComponentEnabledSetting(shortcutProxy, PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP); // Remove any pending notifications that shouldn't persist. final NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); nm.cancelAll(); if (mTtsOverlay != null) { mTtsOverlay.hide(); } }
From source file:com.csipsimple.service.SipService.java
private void applyComponentEnablingState(boolean active) { int enableState = PackageManager.COMPONENT_ENABLED_STATE_DISABLED; if (active && prefsWrapper.getPreferenceBooleanValue(SipConfigManager.INTEGRATE_TEL_PRIVILEGED)) { // Check whether we should register for stock tel: intents // Useful for devices without gsm enableState = PackageManager.COMPONENT_ENABLED_STATE_ENABLED; }/*from ww w . j a v a 2s . c om*/ PackageManager pm = getPackageManager(); ComponentName cmp = new ComponentName(this, "com.csipsimple.ui.PrivilegedOutgoingCallBroadcaster"); try { if (pm.getComponentEnabledSetting(cmp) != enableState) { pm.setComponentEnabledSetting(cmp, enableState, PackageManager.DONT_KILL_APP); } } catch (IllegalArgumentException e) { Log.d(THIS_FILE, "Current manifest has no PrivilegedOutgoingCallBroadcaster -- you can ignore this if voluntary", e); } }
From source file:com.google.android.marvin.screenspeak.ScreenSpeakService.java
/** * Registers listeners, sets service info, loads preferences. This should be called from * {@link #onServiceConnected} and when ScreenSpeak resumes from a suspended state. */// w w w . j ava 2 s .co m private void suspendInfrastructure() { if (!isServiceActive()) { if (LogUtils.LOG_LEVEL <= Log.ERROR) { Log.e(LOGTAG, "Attempted to suspend while already suspended"); } return; } mDimScreenController.makeScreenBright(); interruptAllFeedback(); setServiceState(SERVICE_STATE_SUSPENDED); // Some apps depend on these being set to false when ScreenSpeak is disabled. if (mSupportsTouchScreen) { requestTouchExploration(false); } if (SUPPORTS_WEB_SCRIPT_TOGGLE) { requestWebScripts(false); } mPrefs.unregisterOnSharedPreferenceChangeListener(mSharedPreferenceChangeListener); unregisterReceiver(mActiveReceiver); if (mCallStateMonitor != null) { mCallStateMonitor.stopMonitor(); } if (mRingerModeAndScreenMonitor != null) { unregisterReceiver(mRingerModeAndScreenMonitor); } if (mMenuManager != null) { mMenuManager.clearCache(); } if (mVolumeMonitor != null) { unregisterReceiver(mVolumeMonitor); mVolumeMonitor.releaseControl(); } if (mBatteryMonitor != null) { unregisterReceiver(mBatteryMonitor); } if (mPackageReceiver != null) { unregisterReceiver(mPackageReceiver); } if (mShakeDetector != null) { mShakeDetector.setEnabled(false); } // The tap detector is enabled through reloadPreferences if (mSideTapManager != null) { unregisterReceiver(mSideTapManager); mSideTapManager.onSuspendInfrastructure(); } // Disable the proxy activity for long-press search. final PackageManager packageManager = getPackageManager(); final ComponentName shortcutProxy = new ComponentName(this, ShortcutProxyActivity.class); packageManager.setComponentEnabledSetting(shortcutProxy, PackageManager.COMPONENT_ENABLED_STATE_DISABLED, PackageManager.DONT_KILL_APP); // Remove any pending notifications that shouldn't persist. final NotificationManager nm = (NotificationManager) getSystemService(NOTIFICATION_SERVICE); nm.cancelAll(); }
From source file:com.android.settings.applications.CanBeOnSdCardChecker.java
@Override public void onClick(DialogInterface dialog, int which) { if (mResetDialog == dialog) { final PackageManager pm = getActivity().getPackageManager(); final IPackageManager mIPm = IPackageManager.Stub.asInterface(ServiceManager.getService("package")); final INotificationManager nm = INotificationManager.Stub .asInterface(ServiceManager.getService(Context.NOTIFICATION_SERVICE)); final NetworkPolicyManager npm = NetworkPolicyManager.from(getActivity()); final AppOpsManager aom = (AppOpsManager) getActivity().getSystemService(Context.APP_OPS_SERVICE); final Handler handler = new Handler(getActivity().getMainLooper()); (new AsyncTask<Void, Void, Void>() { @Override/* ww w .j a v a 2 s . c o m*/ protected Void doInBackground(Void... params) { List<ApplicationInfo> apps = pm .getInstalledApplications(PackageManager.GET_DISABLED_COMPONENTS); for (int i = 0; i < apps.size(); i++) { ApplicationInfo app = apps.get(i); try { if (DEBUG) Log.v(TAG, "Enabling notifications: " + app.packageName); nm.setNotificationsEnabledForPackage(app.packageName, app.uid, true); } catch (android.os.RemoteException ex) { } if (!app.enabled) { if (DEBUG) Log.v(TAG, "Enabling app: " + app.packageName); if (pm.getApplicationEnabledSetting( app.packageName) == PackageManager.COMPONENT_ENABLED_STATE_DISABLED_USER) { pm.setApplicationEnabledSetting(app.packageName, PackageManager.COMPONENT_ENABLED_STATE_DEFAULT, PackageManager.DONT_KILL_APP); } } } try { mIPm.resetPreferredActivities(UserHandle.myUserId()); } catch (RemoteException e) { } aom.resetAllModes(); final int[] restrictedUids = npm.getUidsWithPolicy(POLICY_REJECT_METERED_BACKGROUND); final int currentUserId = ActivityManager.getCurrentUser(); for (int uid : restrictedUids) { // Only reset for current user if (UserHandle.getUserId(uid) == currentUserId) { if (DEBUG) Log.v(TAG, "Clearing data policy: " + uid); npm.setUidPolicy(uid, POLICY_NONE); } } handler.post(new Runnable() { @Override public void run() { if (DEBUG) Log.v(TAG, "Done clearing"); if (getActivity() != null && mActivityResumed) { if (DEBUG) Log.v(TAG, "Updating UI!"); for (int i = 0; i < mTabs.size(); i++) { TabInfo tab = mTabs.get(i); if (tab.mApplications != null) { tab.mApplications.pause(); } } if (mCurTab != null) { mCurTab.resume(mSortOrder); } } } }); return null; } }).execute(); } }