diff --git a/app/build.gradle b/app/build.gradle index a141e4ab..efe0aa0e 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -4,7 +4,7 @@ dependencies { compile 'com.google.zxing:core:3.3.0' compile 'com.google.code.gson:gson:2.8.2' compile 'com.squareup.picasso:picasso:2.5.2' - compile 'io.fotoapparat.fotoapparat:library:1.4.1' + compile 'io.fotoapparat.fotoapparat:library:2.2.0' testCompile 'junit:junit:4.12' testCompile 'org.mockito:mockito-core:1.10.19' } diff --git a/app/src/main/java/org/fedorahosted/freeotp/add/ScanActivity.java b/app/src/main/java/org/fedorahosted/freeotp/add/ScanActivity.java index e1b37565..f759d9ad 100644 --- a/app/src/main/java/org/fedorahosted/freeotp/add/ScanActivity.java +++ b/app/src/main/java/org/fedorahosted/freeotp/add/ScanActivity.java @@ -39,13 +39,14 @@ import com.squareup.picasso.Picasso; import io.fotoapparat.Fotoapparat; import io.fotoapparat.parameter.ScaleType; -import io.fotoapparat.parameter.selector.FocusModeSelectors; import io.fotoapparat.view.CameraView; -import static io.fotoapparat.parameter.selector.FocusModeSelectors.autoFocus; -import static io.fotoapparat.parameter.selector.FocusModeSelectors.fixed; -import static io.fotoapparat.parameter.selector.LensPositionSelectors.back; -import static io.fotoapparat.parameter.selector.Selectors.firstAvailable; -import static io.fotoapparat.parameter.selector.SizeSelectors.biggestSize; + +import static io.fotoapparat.selector.FocusModeSelectorsKt.autoFocus; +import static io.fotoapparat.selector.FocusModeSelectorsKt.continuousFocusPicture; +import static io.fotoapparat.selector.FocusModeSelectorsKt.fixed; +import static io.fotoapparat.selector.LensPositionSelectorsKt.back; +import static io.fotoapparat.selector.ResolutionSelectorsKt.highestResolution; +import static io.fotoapparat.selector.SelectorsKt.firstAvailable; public class ScanActivity extends Activity { private Fotoapparat fotoapparat; @@ -136,11 +137,10 @@ protected void onCreate(Bundle savedInstanceState) { fotoapparat = Fotoapparat .with(this) .into(cameraView) - .previewScaleType(ScaleType.CENTER_CROP) - .photoSize(biggestSize()) + .previewScaleType(ScaleType.CenterCrop) .lensPosition(back()) .focusMode(firstAvailable( - FocusModeSelectors.continuousFocus(), + continuousFocusPicture(), autoFocus(), fixed() )) diff --git a/app/src/main/java/org/fedorahosted/freeotp/add/ScanFrameProcessor.java b/app/src/main/java/org/fedorahosted/freeotp/add/ScanFrameProcessor.java index 13b4cd70..73f7079e 100644 --- a/app/src/main/java/org/fedorahosted/freeotp/add/ScanFrameProcessor.java +++ b/app/src/main/java/org/fedorahosted/freeotp/add/ScanFrameProcessor.java @@ -43,15 +43,18 @@ public ScanFrameProcessor(Context context) { } @Override - public void processFrame(final Frame frame) { + public void process(final Frame frame) { MAIN_THREAD_HANDLER.post(new Runnable() { @Override public void run() { try { reader = new QRCodeReader(); + byte[] image = frame.getImage(); + int width = frame.getSize().width; + int height = frame.getSize().height; LuminanceSource ls = new PlanarYUVLuminanceSource( - frame.image, frame.size.width, frame.size.height, - 0, 0, frame.size.width, frame.size.height, false); + image, width, height, + 0, 0, width, height, false); Result r = reader.decode(new BinaryBitmap(new HybridBinarizer(ls))); sendTextToActivity(r.getText()); } diff --git a/build.gradle b/build.gradle index 7da10428..f7a098e9 100644 --- a/build.gradle +++ b/build.gradle @@ -11,6 +11,7 @@ buildscript { allprojects { repositories { + google() jcenter() maven { url 'https://jitpack.io' } }