0

私は PhoneGap 2.5.0 を使用しています。メソッドを呼び出す方法は次のとおりです。

try {
        InputStream is = cordova.getActivity().getContentResolver()
                .openInputStream(Uri.parse(inputString));
        Bitmap bmp = BitmapFactory.decodeStream(is);
        is.close();

カメラを使用して写真を撮るとコードは正常に動作しますが、ダウンロード フォルダーの一部の画像ではランダムに失敗します。これらの画像を確認したところ、すべて content://media/external/images/media/xxxx のような URL でローカルにダウンロードされています。一部のファイルは 6MB とかなり大きく、他のファイルは 700K と小さいものです。失敗は null を返すことによってランダムに発生し、例外によってキャッチされないようです。

4

2 に答える 2

3

ドキュメントから:

入力ストリームをビットマップにデコードします。入力ストリームが null の場合、またはビットマップのデコードに使用できない場合、関数は null を返します。ストリームの位置は、エンコードされたデータが読み取られた後の場所になります。

そのため、InputStream が null であるか、開いているファイルを使用してビットマップをデコードできません。

于 2013-04-05T17:52:04.743 に答える