I have implement Document Scanner supported by IOS 13+ Vision in my Xamarin.Forms App. This is my code for SharedFunction for IOS
[assembly: Dependency(typeof(CameraScanner))]
    class CameraScanner : ICameraScanner
    {
        public void OpenScanCamera()
        {
            ScanViewController viewController = new ScanViewController();
            UIApplication.SharedApplication.KeyWindow.RootViewController.
            PresentViewController(viewController, false, null);
        }
        public static UIKit.UIViewController GetTopViewController()
        {
            var window = UIApplication.SharedApplication.KeyWindow;
            var vc = window.RootViewController;
            while (vc.PresentedViewController != null)
                vc = vc.PresentedViewController;
            if (vc is UINavigationController navController)
                vc = navController.ViewControllers.Last();
            return vc;
        }
    }
VNDocumentCameraViewController class logic for make a View for Take picture and scanning supported by IOS Vision
    [Register("UniversalView")]
    public class UniversalView : UIView
    {
        public UniversalView()
        {
            Initialize();
        }
        public UniversalView(RectangleF bounds) : base(bounds)
        {
            Initialize();
        }
        void Initialize()
        {
            BackgroundColor = UIColor.Blue;
        }
    }
    [Register("ScanViewController")]
    public class ScanViewController : UIViewController
    {
        public ScanViewController()
        {
        }
        public override void DidReceiveMemoryWarning()
        {
            // Releases the view if it doesn't have a superview.
            base.DidReceiveMemoryWarning();
            // Release any cached data, images, etc that aren't in use.
        }
        public override void ViewDidLoad()
        {
            View = new UniversalView();
            base.ViewDidLoad();
            // Perform any additional setup after loading the view
        }
        public override void ViewDidAppear(bool animated)
        {
            var documentCameraController = new VNDocumentCameraViewController();
            var documentscanDelegate = new DocumentScanDelegate();
            documentscanDelegate.OnScanTaken += (VNDocumentCameraScan scan) =>
            {
                documentCameraController.DismissViewController(true, null);
                Debug.WriteLine($"{scan.PageCount} Pages!");
            };
            documentscanDelegate.OnCanceled += () =>
            {
                documentCameraController.DismissViewController(true, null);
            };
            documentCameraController.Delegate = documentscanDelegate;
            documentCameraController.ModalPresentationStyle = UIModalPresentationStyle.OverFullScreen;
            PresentViewController(documentCameraController, true, null);
        }
    }
    class DocumentScanDelegate : VNDocumentCameraViewControllerDelegate
    {
        public delegate void ScanTakenEventHandler(VNDocumentCameraScan scan);
        public event ScanTakenEventHandler OnScanTaken;
        public delegate void ScanCanceledEventHandler();
        public event ScanCanceledEventHandler OnCanceled;
        public override void DidCancel(VNDocumentCameraViewController controller)
        {
            Debug.WriteLine("DocumentScanDelegate:DidCancel");
            OnCanceled();
        }
        public override void DidFinish(VNDocumentCameraViewController controller, VNDocumentCameraScan scan)
        {
            Debug.WriteLine("DocumentScanDelegate:DidFinish");
            OnScanTaken(scan);
        }
        public override void DidFail(VNDocumentCameraViewController controller, NSError error)
        {
            Debug.WriteLine("Failed scanning photo");
        }
    }
}
Which is similar implementation for Xamarin.Android? I know that google also supports Camera Scanning but i can't find a good documentation about it. Anyone had imported this?
