diff options
| author | Roy Ben-Shabat <Roy@Twine-s.com> | 2019-05-21 18:20:54 +0300 |
|---|---|---|
| committer | Roy Ben-Shabat <Roy@Twine-s.com> | 2019-05-21 18:20:54 +0300 |
| commit | 2521b3c058fe18f1ebd48a85577349b49c1c2108 (patch) | |
| tree | 7537f8848dec9d92ffc5575fabedbccb1d17e108 /Software/Android_Studio | |
| parent | 053b6d740ab231380ed6dfa06913bec21225ca41 (diff) | |
| download | Tango-2521b3c058fe18f1ebd48a85577349b49c1c2108.tar.gz Tango-2521b3c058fe18f1ebd48a85577349b49c1c2108.zip | |
TCC database results etc...
Diffstat (limited to 'Software/Android_Studio')
6 files changed, 63 insertions, 16 deletions
diff --git a/Software/Android_Studio/ColorCapture/app/build.gradle b/Software/Android_Studio/ColorCapture/app/build.gradle index 1fed98dc3..500c9cfce 100644 --- a/Software/Android_Studio/ColorCapture/app/build.gradle +++ b/Software/Android_Studio/ColorCapture/app/build.gradle @@ -6,8 +6,8 @@ android { applicationId "com.twine.colorcapture" minSdkVersion 22 targetSdkVersion 27 - versionCode 9 - versionName "1.9" + versionCode 10 + versionName "2.0" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" externalNativeBuild { cmake { @@ -160,6 +160,7 @@ dependencies { implementation 'com.github.florent37:shapeofview:1.3.2' compile 'com.google.android.gms:play-services-gcm:16.1.0' compile 'com.google.android.gms:play-services-auth:16.0.1' + compile 'com.microsoft.azure.android:azure-storage-android:2.0.0@aar' } diff --git a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/capture/CaptureFragmentVM.java b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/capture/CaptureFragmentVM.java index 6e5773e1b..5ce70e284 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/capture/CaptureFragmentVM.java +++ b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/capture/CaptureFragmentVM.java @@ -151,15 +151,13 @@ public class CaptureFragmentVM extends ViewModelBase<ICaptureFragment> implement view.onFrameResult(frameBitmap, sampleBitmap, barcode); view.stopCamera(); - ThreadingUtils.sleep(1000); - isDetecting.set(true); AtomicBoolean abort = new AtomicBoolean(false); notificationProvider.showDialog(new ProcessingDialog(), (vm) -> { - //TODO: Cancel and return to capture + //TODO: Cancel and return to capture. abort.set(true); }); @@ -168,7 +166,7 @@ public class CaptureFragmentVM extends ViewModelBase<ICaptureFragment> implement try { - response = tccService.detect(sampleBitmap, barcode); + response = tccService.detect(sampleBitmap, frameBitmap, barcode); success = true; } catch (Exception ex) diff --git a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/loading/LoadingActivityVM.java b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/loading/LoadingActivityVM.java index f2bbd6413..02e2d8d15 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/loading/LoadingActivityVM.java +++ b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/views/loading/LoadingActivityVM.java @@ -60,7 +60,6 @@ public class LoadingActivityVM extends ViewModelBase<ILoadingActivity> new Task.TaskBuilder().setAction(() -> { tccService.getDefinition(); - ThreadingUtils.sleep(1000); }).setContinueWith(() -> { initialized = true; diff --git a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/web/ITCCService.java b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/web/ITCCService.java index 9cca30b73..a386e51ba 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/web/ITCCService.java +++ b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/web/ITCCService.java @@ -16,9 +16,9 @@ public interface ITCCService { DefinitionResponse getDefinition() throws Exception; - DetectionResponse detect(Bitmap bitmap, String barcode) throws Exception; + DetectionResponse detect(Bitmap sampleBitmap, Bitmap frameBitmap, String barcode) throws Exception; MachineRegistrationResponse register(String serialNumber) throws Exception; - ResultByEmailResponse sendResultByEmail(ResultByEmailRequest request) throws Exception; + ResultByEmailResponse sendResultByEmail(ResultByEmailRequest request) throws Exception; } diff --git a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/web/TCCService.java b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/web/TCCService.java index 59fa6f3b5..ea1c8e0a9 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/web/TCCService.java +++ b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/web/TCCService.java @@ -6,7 +6,11 @@ import android.os.Build; import android.provider.Settings; import android.util.Base64; +import com.microsoft.azure.storage.blob.CloudBlobClient; +import com.microsoft.azure.storage.blob.CloudBlockBlob; +import com.twine.colorcapture.App; import com.twine.colorcapture.BuildConfig; +import com.twine.colorcapture.core.Task; import com.twine.colorcapture.logging.LogManager; import com.twine.colorcapture.utils.BitmapUtils; import com.twine.colorcapture.web.messages.DefinitionRequest; @@ -21,6 +25,7 @@ import com.twine.colorcapture.web.messages.ResultByEmailRequest; import com.twine.colorcapture.web.messages.ResultByEmailResponse; import java.io.IOException; +import java.net.URI; import java.util.List; import java.util.UUID; @@ -72,7 +77,7 @@ public class TCCService implements ITCCService } @Override - public DetectionResponse detect(Bitmap bitmap, String barcode) throws Exception + public DetectionResponse detect(Bitmap sampleBitmap, Bitmap frameBitmap, String barcode) throws Exception { LogManager.log("Sending detection request..."); @@ -80,7 +85,7 @@ public class TCCService implements ITCCService DetectionRequest request = new DetectionRequest(); - request.setBitmapString(BitmapUtils.getBitmapBase64String(bitmap)); + request.setBitmapString(BitmapUtils.getBitmapBase64String(sampleBitmap)); request.setBarcode(barcode); LogManager.log("Detection Request:", request); @@ -89,7 +94,28 @@ public class TCCService implements ITCCService if (response.isSuccessful()) { - LogManager.log("Detection Response:", response.body()); + DetectionResponse r = response.body(); + + new Task.TaskBuilder().setAction(() -> + { + + //Upload source bitmap. + try + { + LogManager.log("Uploading source image to storage blob at " + r.getSourceImageBlobAddress()); + CloudBlockBlob blob = new CloudBlockBlob(new URI(r.getSourceImageBlobAddress())); + byte[] frameData = BitmapUtils.getBitmapBytes(frameBitmap); + blob.uploadFromByteArray(frameData, 0, frameData.length); + LogManager.log("Source image upload successfully"); + } + catch (Exception ex) + { + LogManager.log(ex, "Error uploading source image to storage."); + } + + }).build().start(); + + LogManager.log("Detection Response:", r); return response.body(); } else @@ -167,12 +193,24 @@ public class TCCService implements ITCCService LoginRequest request = new LoginRequest(); request.setAppId(BuildConfig.WEB_SERVICE_APP_ID); - String deviceId; + String deviceId = null; - LogManager.log("Getting device id from shared preferences..."); + try + { + LogManager.log("Getting device id from phone factory..."); + deviceId = Settings.Secure.getString(App.getContext().getContentResolver(), Settings.Secure.ANDROID_ID); + } + catch (Exception ex) + { + LogManager.log(ex,"Error getting unique device id."); + } - SharedPreferences prefs = getContext().getSharedPreferences(DEVICE_ID_PREF_NAME, MODE_PRIVATE); - deviceId = prefs.getString("DeviceId", null); + if (deviceId == null) + { + LogManager.log("Getting device id from shared preferences..."); + SharedPreferences prefs = getContext().getSharedPreferences(DEVICE_ID_PREF_NAME, MODE_PRIVATE); + deviceId = prefs.getString("DeviceId", null); + } if (deviceId == null) { diff --git a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/web/messages/DetectionResponse.java b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/web/messages/DetectionResponse.java index 2e33a04b5..674d49b50 100644 --- a/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/web/messages/DetectionResponse.java +++ b/Software/Android_Studio/ColorCapture/app/src/main/java/com/twine/colorcapture/web/messages/DetectionResponse.java @@ -4,6 +4,7 @@ public class DetectionResponse { private DetectionColor rawColor; private DetectionColor processedColor; + private String sourceImageBlobAddress; public DetectionColor getRawColor() { @@ -24,4 +25,14 @@ public class DetectionResponse { this.processedColor = processedColor; } + + public String getSourceImageBlobAddress() + { + return sourceImageBlobAddress; + } + + public void setSourceImageBlobAddress(String sourceImageBlobAddress) + { + this.sourceImageBlobAddress = sourceImageBlobAddress; + } } |
