1

私は次のものを持っています:

画像が置かれている場所 (インターネット上) の非常に長い URL

String imageAddress = data.getExtras().get("imageHTTP").toString();

正常に返され、.jpg で終わる画像があります

次の部分は、私が問題を抱えているところです。基本的に、Uri を受け入れるクロップ インテントがありますが、次の方法は機能しません。

Uri imageUri = Uri.parse(imageAddress);
Intent intent = new Intent(this, com.android.camera.CropImage.class);
intent.setData(uri);
intent.putExtra("return-data", true);
startActivityForResult(intent, CROP);

何か案は?

次のエラー コード:

got exception decoding bitmap 
java.lang.NullPointerException
at com.android.camera.Util.makeInputStream(Util.java:337)
4

1 に答える 1

0

私はこれを理解しました。SDカードに一時的に保存してから切り取り、一時的なものを削除する方が簡単でした。その後、ダウンロードした作物ライブラリで実行しました(どこからダウンロードしたのかわかりませんが、いくつかあります)。

File file = null;

            try {
                URL myImageURL = new URL(imagePath);
                HttpURLConnection connection = (HttpURLConnection)myImageURL.openConnection();
                connection.setDoInput(true);
                connection.connect();
                InputStream input = connection.getInputStream();

                // Get the bitmap
                Bitmap myBitmap = BitmapFactory.decodeStream(input);

                // Save the bitmap to the file
                String path = Environment.getExternalStorageDirectory().toString() + "/polygonattraction/app/";
                OutputStream fOut = null;
                file = new File(path, "temp.png");
                fOut = new FileOutputStream(file);

                myBitmap.compress(Bitmap.CompressFormat.PNG, 85, fOut);
                fOut.flush();
                fOut.close();
            }
            catch (IOException e) {}

            Log.w("tttt", "got bitmap");

            Uri uri = Uri.fromFile(file);
于 2012-07-15T15:30:32.810 に答える