Передача данных с Android с помощью WebView на Asp.Net серверная часть

#javascript #c# #android #asp.net #kotlin

Вопрос:

У меня есть приложение для Android, которое в основном представляет собой веб-представление для нашего asp.net веб-приложение. Теперь мне нужно внедрить сканер штрих-кода в приложение для Android, чтобы считывать и переносить номер со штрих-кода на asp.net бэкэнд. У меня есть эта строка в js в Интернете, чтобы вызвать функцию Android для сканера штрих-кодов:

 window.AndroidWebInterface.getIcc();
 

В Android я перепробовал множество различных подходов для запуска функции сканирования, которая использует набор ML для считывания штрих-кода, который работает нормально, но у меня возникли проблемы с возвратом кода, который я прочитал с помощью камеры, в функцию вызывающего абонента js из бэкэнда. Я могу отобразить его в приложении для Android, но не знаю, как вернуть его на серверную часть.
Немного кода из приложения для Android

 barcodeScanner.process(inputImage)
            .addOnSuccessListener { barcodeList ->
                val barcode = barcodeList.getOrNull(0)
                // `rawValue` is the decoded value of the barcode
                barcode?.rawValue?.let { value ->
                    // update our textView to show the decoded value
                    binding.bottomText.text = barcode.displayValue

                    val data = Intent()
                    data.putExtra("icc", barcode.displayValue)

                    setResult(Activity.RESULT_OK, data)
                    finish()
                }
            }

registerForActivityResult(ActivityResultContracts.StartActivityForResult()) { result ->
    if (result.resultCode == Activity.RESULT_OK) {
        icc = result.data?.getStringExtra("icc")
    }
}

startForResult.launch(Intent(this, ScanActivity::class.java))
 

Комментарии:

1. Я думаю, в тот момент, когда вы представите сканер? Тогда это должно быть вызвано вызовом веб-метода на сервер. неясно, работает ли сканер через клин клавиатуры, но скажите, даже если вы используете камеру для сканирования штрих-кода? Ваша процедура получит возвращенный номер штрих-кода, в этот момент, если вам нужны данные с сервера на основе этого штрих-кода, затем вызовите веб-метод на стороне сервера (ajax или вызов rest). Я бы не стал пробовать какой-то недоделанный подход, при котором по телефону вы пытаетесь использовать какую-то веб-страницу, застрявшую внутри представления на телефоне. У вас уже есть возможность разработки по телефону.