thegrizzlylabs / geniusscan-sdk-demo

Demo apps for Genius Scan SDK
30 stars 38 forks source link

Option to switch between single and multi page #62

Closed komritza closed 1 year ago

komritza commented 1 year ago

Hi, I am using a flutter sdk and trying to find some options to customise UI/UX. It seems that there are not many options to use. From the docs, to enable/disable multiPage it must be set in config map

     var scanConfiguration = {
            'source': 'camera',
            'multiPage': true, => here
            'ocrConfiguration': {
              'languages': ['eng'],
              'languagesDirectoryUrl': languageFolder.path
            }
          };

Is there a way to add a switch button(enable/disable multipage) while being in the camera view? In the demo app, on the top right corner user can enable or disable this. Would be nice if I could do the same.

Thanks in advance!

bvirlet commented 1 year ago

It's not possible to add a switch in the UX.

We don't think a switch in the UX is a good idea because it doesn't remove any step in the scan flow (at best, it's the same number of user taps).

That being said, we're interested to learn about it if you have a specific use case requiring this.

guillaume-tgl commented 1 year ago

In the demo app, on the top right corner user can enable or disable this.

Are you referring to Genius Scan? We don't use the ScanFlow in Genius Scan, we use a custom UI, that's why we can add this button.

komritza commented 1 year ago

@bvirlet Well I think that this is not the case regarding steps. Scenario 1: multiPage: true =>

  1. Step - Camera View - Take Image manually(or wait magic to happen with genius scan)
  2. Step - Preview Page => Click on next to go back to camera view(take another image)
  3. Step - Press Done to remove genius scan view and proceed with my flutter code

Scenario 2: multiPage: false =>

  1. Step - Camera View - Take Image manually(or wait magic to happen with genius scan)
  2. Step - Preview Page => Click on next and then the genius scan is closed and now i can proceed with my flutter code and handle logic what to do with this file.

@guillaume-tgl Yes, demo app from Android Play Store.

To answer about our use cases.

Our current set up with normal camera looks like this: 1) Open Camera (currently using camera package from pub.dev) by tapping on camera button 2) Then User comes to Camera View and can either take an image, pick from gallery or pick from documents(so 3 different buttons on bottom navigation bar) 3) Depending on an action from user, it will either:

For all 3 cases, User can cancel it at any time.

So we are trying to get the same UX with GeniusScan as we have with the current set up.

Was this explanation helpful?

We have some new ideas of how to overcome some problems, but would be nice to add in the future more UI/UX components and let developer decide where he/she wants to place some buttons/Icons.

Appreciate a lot your feedback and fast responses!

bvirlet commented 1 year ago

Regarding the steps, you're not counting the step where you have to toggle the multipage switch (or I'm mistaken?)

Thanks for sharing the use case. This is always helpful.

komritza commented 1 year ago

That is correct. But I would like to set as default multiPage:false and with a button somewhere on the screen, user can then switch to true if he wants to scan more then 1 document.

bvirlet commented 1 year ago

@komritza the problem we've found with this approach is that usually, the user only notices too late that they would need to toggle the switch to scan multiple documents (eg. they open the screen, scan a page, … and then it's too late). The only reason we have the switch in Genius Scan (on the public app stores), is that some users always scan single-page documents.

komritza commented 1 year ago

@bvirlet I would say that majority of our app users are scanning only one document per upload, but would be nice to give users more options. One thing that can be improved from your side is that maybe in the preview screen, after an image has been scanned, there should be 2 buttons on the bottom(or somewhere on the screen). One is next, leave scanning and proceed with what ever, and second is add, scan another image. Like this, even if user scans an image and forget to switch to multi view, he/she can add new images to the scan. This is just my 2 cents.

We found some solutions and workarounds of how to overcome some problems.

bvirlet commented 1 year ago

@komritza thanks, that's very sensible.