1

私が取り組んでいるアプリには、HTMLファイルをアプリに送信して印刷する機能があります(問題のアプリはBrother iPrint&Scanです)。

これを行うコードは次のとおりです。

    final Intent emailIntent = new Intent(android.content.Intent.ACTION_SEND);

    emailIntent.setType("text/html");

    emailIntent.putExtra(android.content.Intent.EXTRA_SUBJECT, "Printable Stuff");

    // Send attachment (the html file).
    Uri uri = Uri.fromFile(htmlFile);
    emailIntent.putExtra(android.content.Intent.EXTRA_STREAM, uri);

    startActivity(Intent.createChooser(emailIntent, "Send To"));

これが行うことは、互換性のあるセレクターを表示することです。通常、これは gmail と兄弟の iPrint&Scan アプリです。Gmail はそれを添付ファイルとして受け取り、送信できます。問題ないように見えます。ブラウザーで表示できます。html マークアップは問題ないように見えます (そして検証されます)。

ここでキャッチがあります...兄弟のiPrint&Scanアプリはhtmlファイルを取得しますが、htmlをテキストとして表示するだけです...奇妙です。それはまったくレンダリングされません。

さらに厄介なことは、ブラウザからアプリにページを共有でき、それが正常に表示されることです (HTML を読み取って解析できるのでしょうか?)

ここで何か間違ったことをしていますか?

私も試しました:

emailIntent.setDataAndType(Uri.fromFile(htmlFile), "text/html");

インテントに余分なものを入れる代わりに...しかし、兄弟の印刷アプリはリストにまったく表示されません(gmailは表示されます)。

何か案は?

4

1 に答える 1