Android Printing API on Galaxy Tab

前端 未结 2 1271

I would like to add wireless printing to my android 2.2 application which is targeted for the Galaxy tablet. I see that the internet browser has a print option so I am assu

相关标签:
2条回答
  • 2020-12-05 22:04

    Use build in PrintManager Service

    private void doWebViewPrint() {
            mWebView = new WebView(PrintActivity.this);
            WebSettings settings = mWebView.getSettings();
            settings.setJavaScriptEnabled(true);
            mWebView.setWebViewClient(new WebViewClient() {
    
                @Override
                public boolean shouldOverrideUrlLoading(WebView view, String url) {
                    return false;
                }
    
                @Override
                public void onPageFinished(WebView view, String url) {
                    mProgressBar.setVisibility(View.GONE);
                    createWebPrintJob(view);
                    mWebView = null;
                }
            });
            mWebView.loadUrl(urlToPrint);
        }
    
        protected void createWebPrintJob(WebView webView) {
            PrintManager printManager = (PrintManager) getSystemService(Context.PRINT_SERVICE);
            @SuppressWarnings("deprecation")
            PrintDocumentAdapter printAdapter = webView.createPrintDocumentAdapter();
            mPrintJob = printManager.print(docName, printAdapter,
                    new PrintAttributes.Builder().build());
        }
    

    you need to set

    urlToPrint = "whatUrlToPrint"
    docName = "anyDocumentName";
    
    0 讨论(0)
  • 2020-12-05 22:07

    Printing is not yet supported on Android. You have to use a 3rd party solution like Mobile Dynamix, HP iPrint for Android or Send2Printer.

    Intents are described here:

    http://www.openintents.org/en/node/735

    http://www.openintents.org/en/node/278

    0 讨论(0)
提交回复
热议问题