[dev_minibus-d_230425_3.2.0] 优化可能出现bug的代码
This commit is contained in:
@@ -2176,8 +2176,12 @@ public final class ActivityUtils {
|
||||
mGetHomeActivities = method;
|
||||
}
|
||||
}
|
||||
mReplacePreferredActivity.setAccessible(true);
|
||||
mGetHomeActivities.setAccessible(true);
|
||||
if (mReplacePreferredActivity != null) {
|
||||
mReplacePreferredActivity.setAccessible(true);
|
||||
}
|
||||
if (mGetHomeActivities != null) {
|
||||
mGetHomeActivities.setAccessible(true);
|
||||
}
|
||||
|
||||
IntentFilter HOME_FILTER = new IntentFilter(Intent.ACTION_MAIN);
|
||||
HOME_FILTER.addCategory(Intent.CATEGORY_HOME);
|
||||
@@ -2185,18 +2189,22 @@ public final class ActivityUtils {
|
||||
final List<ComponentName> allComponents = new ArrayList<>();
|
||||
final List<ResolveInfo> homeActivities = new ArrayList<>();
|
||||
try {
|
||||
mGetHomeActivities.invoke(packageManager, homeActivities);
|
||||
if (mGetHomeActivities != null) {
|
||||
mGetHomeActivities.invoke(packageManager, homeActivities);
|
||||
}
|
||||
for (ResolveInfo info : homeActivities) {
|
||||
final ActivityInfo appInfo = info.activityInfo;
|
||||
ComponentName activityName = new ComponentName(appInfo.packageName, appInfo.name);
|
||||
allComponents.add(activityName);
|
||||
}
|
||||
mReplacePreferredActivity.invoke(
|
||||
packageManager,
|
||||
HOME_FILTER,
|
||||
IntentFilter.MATCH_CATEGORY_EMPTY,
|
||||
allComponents.toArray(new ComponentName[0]),
|
||||
componentName);
|
||||
if (mReplacePreferredActivity != null) {
|
||||
mReplacePreferredActivity.invoke(
|
||||
packageManager,
|
||||
HOME_FILTER,
|
||||
IntentFilter.MATCH_CATEGORY_EMPTY,
|
||||
allComponents.toArray(new ComponentName[0]),
|
||||
componentName);
|
||||
}
|
||||
} catch (IllegalAccessException | InvocationTargetException e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user