/** * This cannot be offloaded to the database (as we did with the query which updates apps, * depending on whether their apks are compatible or not). The reason is that we need to interact * with the CompatibilityChecker in order to see if, and why an apk is not compatible. */ private void calcApkCompatibilityFlags(List<Apk> apks) { for (final Apk apk : apks) { final List<String> reasons = checker.getIncompatibleReasons(apk); if (reasons.size() > 0) { apk.compatible = false; apk.incompatibleReasons = Utils.CommaSeparatedList.make(reasons); } else { apk.compatible = true; apk.incompatibleReasons = null; } } }
private void tagFeatures(App app) throws IOException { serializer.startTag("", "features"); if (app.installedApk.features != null) serializer.text(Utils.CommaSeparatedList.str(app.installedApk.features)); serializer.endTag("", "features"); }