<!-- This works around some strange Android/ProGuard problem verifying MaskUtil -->
<arg value="-keep class com.google.zxing.qrcode.encoder.MaskUtil { public * ; }"/>
<arg value="-target 5"/>
- <arg value="-optimizationpasses 4"/>
+ <!-- Keeping this low also avoids some weird Android/ProGuard issue I couldn't resolve otherwise -->
+ <arg value="-optimizationpasses 2"/>
<arg value="-dontshrink"/>
<arg value="-dontobfuscate"/>
<arg value="-dontskipnonpubliclibraryclasses"/>
int middle = height >> 1;
boolean tryHarder = hints != null && hints.containsKey(DecodeHintType.TRY_HARDER);
- int rowStep = Math.max(1, height >> (tryHarder ? 8 : 4));
+ int rowStep = Math.max(1, height >> (tryHarder ? 8 : 5));
int maxLines;
if (tryHarder) {
maxLines = height; // Look at the whole image, not just the center
} else {
- maxLines = 9; // Nine rows spaced 1/16 apart is roughly the middle half of the image
+ maxLines = 15; // 15 rows spaced 1/32 apart is roughly the middle half of the image
}
for (int x = 0; x < maxLines; x++) {
vector.addElement(BarcodeFormat.UPC_E);
vector.addElement(BarcodeFormat.EAN_13);
vector.addElement(BarcodeFormat.EAN_8);
+ vector.addElement(BarcodeFormat.RSS14);
if (!productsOnly) {
vector.addElement(BarcodeFormat.CODE_39);
vector.addElement(BarcodeFormat.CODE_128);