なか日記

一度きりの人生、楽しく生きよう。

他のアプリから画像を受け取る方法

他のアプリに送信する方法はいろんな所で見かけるが、受信のサンプルはあまり見かけなかったのでメモっておきます。

ブロードキャストレシーバーの記述は行っている事を前提に、インテントを受け取った所から抜粋しています。

サンプルソース

  // インテントからBitmapオブジェクトを生成
  Uri uri = getIntent().getParcelableExtra(Intent.EXTRA_STREAM);
  Bitmap bmp = Media.getBitmap(getContentResolver(), uri);

  // SDカードの直下に画像を保存
  File picFile = new File(Environment.getExternalStorageDirectory().getPath() + File.separator + "hoge.png");
  FileOutputStream stream = new FileOutputStream(picFile);
  bmp.compress(Bitmap.CompressFormat.PNG, 100, stream);

その他のポイント

画像を受け取る以外のポイント

SDカードのディレクトリを取得する
Environment.getExternalStorageDirectory()
画像(Bitmapオブジェクト)をファイルに保存する
bmp.compress(Bitmap.CompressFormat.PNG, 100, stream)