正在使用将自己设置为默认启动器的家长控制应用程序(通过向用户展示打开选择器并始终选择)。用户可以通过单击操作栏上的退出图标来退出应用程序。
退出后,它应该重置默认启动器,而不会向用户显示选择器屏幕。
如何将某个应用设置为过去由用户批准的默认启动器? Playstore中的某些应用已经可以执行此操作。
答案 0 :(得分:0)
不是理想的解决方案。但是,这可能有助于解决问题。
检查您的应用程序是否为默认启动器:
private boolean isMyAppLauncherDefault() {
final IntentFilter filter = new IntentFilter(Intent.ACTION_MAIN);
filter.addCategory(Intent.CATEGORY_HOME);
List<IntentFilter> filters = new ArrayList<IntentFilter>();
filters.add(filter);
final String myPackageName = getPackageName();
List<ComponentName> activities = new ArrayList<ComponentName>();
final PackageManager packageManager = (PackageManager) getPackageManager();
packageManager.getPreferredActivities(filters, activities, null);
for (ComponentName activity : activities) {
if (myPackageName.equals(activity.getPackageName())) {
return true;
}
}
return false;
}
提示用户选择其默认启动器作为您的启动器:
private void launchAppChooser() {
Log.d(TAG, "launchAppChooser()");
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}