2

画像を保存せずに画面のスクリーンショットを作成したいので、次のようにしてスクリーンショットを作成します。

View view = webView.getRootView();
view.setDrawingCacheEnabled(true);
Bitmap bitmap = Bitmap.createBitmap(view.getDrawingCache());
view.setDrawingCacheEnabled(false);
result = new PluginResult(PluginResult.Status.OK);

画像をメールに添付するには:

i.putExtra(Intent.EXTRA_STREAM, Uri.parse("file:///INFINITA-PL.png"));

パスなしでそれを行う方法がわかりません。

4

1 に答える 1

2

EXTRA_STREAM値は、Uri電子メール プロセスで開くことができる である必要があります。ファイルとして保存してそれを渡したくない場合は、 を実装しContentProviderてアクセスできるようにする必要があります。一般に、これを行うのはかなり面倒です。その質問のコメントをエコーできます(あきらめる前に、ファイルシステムにアクセスせずにそれを行うのにしばらく苦労しました)。

File を使用して、アプリの残りの部分に進む方がよいでしょう。

于 2012-09-18T07:50:56.717 に答える