Если вы хотите обработать ошибку в WebView, вы должны переопределить onReceivedError в соответствии со следующим кодом,
private class MyWebViewClient extends WebViewClient {
.
.
.
// api<23
@Override
public void onReceivedError(WebView view, int errorCode, String description, String url) {
view.stopLoading();
webview.loadUrl("file:///android_asset/error/error.html"); // load error page from asset folder
// handle error
}
// api> 23
@Override
@TargetApi(android.os.Build.VERSION_CODES.M)
public void onReceivedError(WebView view, WebResourceRequest request, WebResourceError error) {
view.stopLoading();
webview.loadUrl("file:///android_asset/error/error.html"); // load error page from asset folder
// handle error
// super.onReceivedError(view, request, error);
}
.
.
.
}
, вы также можете проверить соединение в shouldOverrideUrlLoading, и, если не подключено, загрузить страницу ошибки, попробуйте это:
public boolean shouldOverrideUrlLoading(WebView view, String url) {
if (!isNetworkAvailable(getApplicationContext())) {
showCustomErrorPage();
return true;
}
.
.
.
}
showCustomErrorPage функция:
private void showCustomErrorPage() {
webview.loadUrl("file:///android_asset/error/error.html");
}
Я не попробовал его параллельным портом, но VMware Workstation 6 (выполняющий Windows XP Pro сверху реального XP Pro размещают), позволяет мне говорить с последовательными портами очень хорошо. У меня есть последовательная comms карта с 2 портами в машине, и VMware настроен для давания контроля портов к гостевой машине. (Это для сканирующего устройства чека).
Я еще не вошел в это с версиями USB сканера чека, но мой опыт с VMware Workstation на ПК (и VMware Fusion на Mac) предположил бы, что это будет также работать - это довольно хорошо в предоставлении, Вы получаете доступ к базовым устройствам, если Вы заботитесь настраивать программное обеспечение VM сначала.
Мне будет интересно видеть то, что другие ответы Вы получаете.:-)
Я использую VMware Workstation 6 для отладки нашего программного обеспечения EPOS, которое использует тепловые принтеры получения, подключенные к последовательной плате PCI в моей машине. Я могу перенаправить последовательный порт в файл и видеть, отправляю ли я корректные команды.
Необходимо смочь получить доступ к параллельному порту главных компьютеров таким же образом от VM.
Страница 313 руководства VMware Workstation 6 объясняет, как добавить параллельный порт к VM.
У меня есть опыт с Виртуальным ПК и VMware Workstation. В то время как Виртуальный ПК делает хорошее задание управления ОС, это не выставляет USB-порты или параллельные порты, в то время как VMware Workstation делает. Хорошие новости - то, что VMware имеет преобразователь, который можно использовать для преобразования Виртуального ПК VM во что-то, что они могут использовать, и можно использовать свободный VMware Player для тестирования с перед переключением. Печально миграция является одним путем путь, поэтому сделайте резервное копирование своего Виртуального VM's ПК перед прохождением через преобразования.
Я в настоящее время работаю с Sun Oracle VirtualBox, в которой можно установить все большая часть любой ОС.
Поддержка USB: (полный/фильтрованный) USB / USB2 (EHCI) контроллер
Последовательные порты: 2* Com1-4 / Определяемый пользователем (Набор владеют Порт ввода-вывода и IRQ.
Режим: Канал/Устройство/Разъединенный Хоста. Может Создать ответ Канала, указывают путь.
CD/DVD: с Проходят (Никакое Аудио, Пишущее все же)
Вы можете также enaple 3D ускорение.
Это также поддерживает IO APIC/ACPI / VT-x/AMD-V с вложенной Подкачкой страниц / PAE/NX
(Должен был искать некоторые из тех сокращений для знания то, что они имеют в виду.)
Править:
Я не использовал ни одной вышеупомянутой функциональности в целях развития.