【android】InputStreamの中身がnullになった時の解決法

exifinterfaceの処理の中でmatrixを使ってbitmapを新しく生成する機能を

付けたかったのですが、Bitmap.createBitmapメソッド内で画像のwidthを正しく

取得できなかったのでその解決法を書いていきます。

さてその解決法ですがとてもシンプルで、ExifInterface定義前にInputStream inとは別にもう一つ

InputStream transImgと定義してbitmapfactoryで加工して先ほどエラーになった関数の引数に渡せばいいだけ。

</pre>
<pre>InputStream transImg = getContentResolver().openInputStream(cameraUri);
Bitmap cameraimg = BitmapFactory.decodeStream(transImg);</pre>
<pre>

関数に渡す際には最も新しい状態のInputStreamを渡すと覚えれば

大丈夫そうです。

この状態ならどの関数に渡しても値を保ってくれるので問題なく使えます。

 

>株式会社シーポイントラボ

株式会社シーポイントラボ

TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:〒432-8003
   静岡県浜松市中央区和地山3-1-7
   浜松イノベーションキューブ 315
※ご来社の際はインターホンで「316」をお呼びください

CTR IMG