Deal with the case that no print services are installed.

Bug: 27530312
Change-Id: Idd709e66d72efcca4928b471f138f8be66e7ab00
This commit is contained in:
Philip P. Moltmann
2016-03-07 15:28:25 -08:00
parent da9957780b
commit 7833d183e7

View File

@@ -584,21 +584,24 @@ public class PrintSettingsFragment extends ProfileSettingsPreferenceFragment
// updated until this function is called again // updated until this function is called again
List<PrintServiceInfo> services = List<PrintServiceInfo> services =
printManager.getPrintServices(PrintManager.ALL_SERVICES); printManager.getPrintServices(PrintManager.ALL_SERVICES);
final int serviceCount = services.size();
for (int i = 0; i < serviceCount; i++) {
PrintServiceInfo service = services.get(i);
ComponentName componentName = new ComponentName( if (services != null) {
service.getResolveInfo().serviceInfo.packageName, final int serviceCount = services.size();
service.getResolveInfo().serviceInfo.name); for (int i = 0; i < serviceCount; i++) {
PrintServiceInfo service = services.get(i);
data = new SearchIndexableRaw(context); ComponentName componentName = new ComponentName(
data.key = componentName.flattenToString(); service.getResolveInfo().serviceInfo.packageName,
data.title = service.getResolveInfo().loadLabel(packageManager).toString(); service.getResolveInfo().serviceInfo.name);
data.summaryOn = context.getString(R.string.print_feature_state_on);
data.summaryOff = context.getString(R.string.print_feature_state_off); data = new SearchIndexableRaw(context);
data.screenTitle = screenTitle; data.key = componentName.flattenToString();
indexables.add(data); data.title = service.getResolveInfo().loadLabel(packageManager).toString();
data.summaryOn = context.getString(R.string.print_feature_state_on);
data.summaryOff = context.getString(R.string.print_feature_state_off);
data.screenTitle = screenTitle;
indexables.add(data);
}
} }
return indexables; return indexables;