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).