Android HTML печать кода до KitKat (до API 18)

Я ищу простой способ сделать этот фрагмент HTML-кода для печати обратно совместимым со старыми версиями Android:

@TargetApi(Build.VERSION_CODES.KITKAT)
private void createWebPrintJob(WebView webView) {

    // Get a PrintManager instance
    PrintManager printManager = (PrintManager) getSystemService(Context.PRINT_SERVICE);

    // Get a print adapter instance
    PrintDocumentAdapter printAdapter = webView.createPrintDocumentAdapter();

    // Create a print job with name and adapter instance
    String jobName = getString(R.string.app_name) + " Document";
    PrintJob printJob = printManager.print(jobName, printAdapter, new PrintAttributes.Builder().build());

    // Save the job object for later status checking
    mPrintJob = printJob;
}

Это работает с Android 19 (Kit-Kat), но мне также нужны некоторые предыдущие версии.

Мне не нужно загружать и распечатывать веб-страницу из Интернета, у меня уже есть HTML-код в виде строки, который я показываю в веб-просмотре (как вы можете видеть в коде).

Есть ли простой способ печати HTML-кода до Android 19?

Заранее спасибо!

1 ответ

До Kitkat не было Android API для поддержки печати. В 2016 году на тренинге по печати ввода / вывода Google разработчики упомянули, что до Kitkat ваш единственный способ печати - "перекинуть через стену". То есть отправить намерение и надеяться, что у пользователя есть подходящее приложение для печати. Посмотрите на этот вопрос, чтобы найти примеры приложений, обеспечивающих печать (HP ePrint и Google Cloud Print).

Другие вопросы по тегам