public static Integer convertToDpi(ScreenDensity screenDensity) { switch (screenDensity.getDensityOneofCase()) { case DENSITY_ALIAS: return DENSITY_ALIAS_TO_DPI_MAP.get(screenDensity.getDensityAlias()); case DENSITY_DPI: return screenDensity.getDensityDpi(); case DENSITYONEOF_NOT_SET: throw new IllegalArgumentException("ScreenDensity proto is not set properly."); default: throw new IllegalArgumentException("ScreenDensity value is not recognized."); } }
public static Optional<String> getScreenDensityName( ScreenDensityTargeting screenDensityTargeting) { if (screenDensityTargeting.getValueList().isEmpty()) { return Optional.empty(); } ScreenDensity screenDensity = Iterables.getOnlyElement(screenDensityTargeting.getValueList()); return Optional.of( screenDensity.getDensityOneofCase().equals(DENSITY_ALIAS) ? screenDensity.getDensityAlias().name() : Integer.toString(screenDensity.getDensityDpi())); }
public static Optional<Integer> getScreenDensityDpi( ScreenDensityTargeting screenDensityTargeting) { if (screenDensityTargeting.getValueList().isEmpty()) { return Optional.empty(); } ScreenDensity densityTargeting = screenDensityTargeting.getValueList().stream() // For now we only support one value in ScreenDensityTargeting. .collect(MoreCollectors.onlyElement()); return Optional.of( densityTargeting.getDensityOneofCase().equals(DENSITY_ALIAS) ? DENSITY_ALIAS_TO_DPI_MAP.get(densityTargeting.getDensityAlias()) : densityTargeting.getDensityDpi()); } }
.getValueList() .get(0) .getDensityAlias(); switch (density) { case LDPI:
.getScreenDensityTargeting() .getValue(0) .getDensityAlias()) { case LDPI: assertThat(splitResourceTable)
shard.getApkTargeting().getScreenDensityTargeting().getValue(0).getDensityAlias(); switch (density) { case LDPI:
.getScreenDensityTargeting() .getValue(0) .getDensityAlias()) { case LDPI: case MDPI:
SCREEN_DENSITY_TO_PROTO_VALUE_MAP .inverse() .get(value.getDensityAlias()) .replace('-', '_')));