2010-12-13 9 views
4

写真を撮ってWebサービスを呼び出し、両方のドキュメント(画像とWebサービスの応答)をACTION_SEND_MULTIPLEインテントで送信するアンドロイドアプリケーションを開発しました。この操作を行うには、データをArrayList<? extends Parcelable>として渡す必要があります。したがって、アプリケーションはデータを一時ファイルに保存し、これらのファイルから2つのUriオブジェクトを作成します。主な欠点は、呼び出されたアクティビティがデータを処理したかどうかを判断することができないため、アプリケーションがこれらの一時ファイルを削除できないことです。ファイルを作成せずにアクティビティにbyte []データを送信

一時ファイルを作成せずにACTION_SENDまたはACTION_SEND_MULTIPLEのデータ(byte[]データ型)を送信することはできますか?

ありがとうございました

答えて

1

もちろん! データがbyte []データであるとすると、 のようにすることができます。

Intent i = new Intent(Intent.ACTION_SEND) ; 

i.setType("your mime type here"); 

i.putExtra(Intent.EXTRA_STREAM, data); 

startActivity(Intent.createChooser(i,"Send this To:")); 
+1

残念ながら、動作していないようです。私は、ACTION_SENDを処理するGmailやDropboxアプリケーションを試しましたが、デバッグモニターのstacktraceによれば、両方のアプリケーションがEXTRA_STREAMパラメータとしてURIを期待しています。 – Jcs

関連する問題