4

ユーザーがデフォルトのpdf/ebookビューアで暗号化されたpdfファイルを開くことができるアクティビティがあります。暗号化されたpdfファイルの復号化の結果はバイト配列です。そのバイト配列をPDFとして開くインテントに渡したい。インテントインスタンス化は次のようなものです。

PackageManager pm = PackageManager;
Intent intentPdf = pm.GetLaunchIntentForPackage("com.adobe.android");

これは可能ですか?pdfリーダー(Adobe /その他)はバイト配列からPDFファイルであることを理解できますか?Bundle.PutByteArrayとIntent.putExtraを試してみましたが、機能しません。

var bundle = new Bundle();
bundle.PutByteArray("key", inputFileData);
intentPdf.PutExtra("name", bundle);
StartActivity(intentPdf);

inputFileDataは私のバイト配列です。

4

2 に答える 2

3

バンドルの最大サイズは非常に小さいと思います。復号化されたpdfのpdfリーダーにURIを渡すのが最善です。

于 2012-11-01T14:53:03.333 に答える
3

pdfリーダー(Adobe /その他)はバイト配列からPDFファイルであることを理解できますか?

おそらくそうではありません。それらのアプリの開発者に連絡して、彼らに尋ねることを歓迎します。そして、他の人が指摘しているように、これはサイズの問題のために悪い考えです。また、起動したPDFビューアがたまたま独自のタスクを開始した場合、バイト配列はデバイス上の任意のアプリで読み取ることができます

または、このContentProviderようなを使用して、使い捨ての構造を作成することもできます。そのため、PDFビューアがを使用すると、他には何もできなくなります。UriUri

または、バイト配列で動作する独自のPDFビューアを作成することもできます。

于 2012-11-01T23:21:39.140 に答える