Parse.com mendapatkan gambar dari array

Saya mencoba mengunggah gambar yang dipilih pengguna ke dalam array di Parse.com. Saya tidak dapat melakukan itu. masalahnya bagaimana cara menyimpan dan bagaimana cara mendapatkan kembali foto-foto itu? ini kode saya untuk mengunggah gambar (ini adalah contoh jadi saya menggunakan gambar dari drawable:

       Button btnadd = (Button) findViewById(R.id.btnadd);
    btnadd.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            Bitmap bitmap;
            bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.one);
            myArrayOfParseFiles.add(add(bitmap));
            bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.two);
            myArrayOfParseFiles.add(add(bitmap));
            bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.three);
            myArrayOfParseFiles.add(add(bitmap));

            ParseObject object = ParseObject.create("Pictures");
            object.add("pic", myArrayOfParseFiles);
            object.put("username", ParseUser.getCurrentUser().getUsername());
            object.saveInBackground();
        }
    });
    Button btnnext = (Button) findViewById(R.id.btnnext);
    btnnext.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            Intent intentObj = new Intent(Welcome.this, Show.class);
            startActivity(intentObj);
            finish();
        }
    });
}
    public ParseFile add(Bitmap pic){
        ByteArrayOutputStream stream = new ByteArrayOutputStream();
        pic.compress(Bitmap.CompressFormat.PNG, 100, stream);
        byte[] image = stream.toByteArray();
        ParseFile file = new ParseFile(image);
        file.saveInBackground();
    return file;

}

Ini adalah kode saya untuk mendapatkan array dan gambar. Saya mendapatkan nol dan saya tidak bisa mendapatkan gambarnya. dan juga, bagaimana saya melakukannya dalam satu lingkaran untuk seluruh array yang saya miliki di parse (dalam mentah tertentu) dan memasukkannya ke dalam daftar bitmap.

ParseQuery<ParseObject> query = ParseQuery.getQuery("Pictures");
            query.whereEqualTo("username", ParseUser.getCurrentUser().getUsername());
            query.getFirstInBackground(new GetCallback<ParseObject>() {
                @Override
                public void done(ParseObject object, ParseException e) {
                    List<ParseFile> list = object.getList("pic");
                    try {
                        URL url = new URL(list.get(0).getUrl());
                        Bitmap bmp = BitmapFactory.decodeStream(url.openConnection().getInputStream());
                        picone.setImageBitmap(bmp);
                    } catch (MalformedURLException e1) {
                        e1.printStackTrace();
                    } catch (IOException e1) {
                        e1.printStackTrace();
                    }
                }
            });

person Liraz Shaka Amir    schedule 06.04.2016    source sumber


Jawaban (1)


konversi bitmap ke string untuk diunggah:

    private String getStringFromBitmap(Bitmap bitmapPicture) {

        final int COMPRESSION_QUALITY = 100;
        String encodedImage;
        ByteArrayOutputStream byteArrayBitmapStream = new ByteArrayOutputStream();
        bitmapPicture.compress(Bitmap.CompressFormat.PNG, COMPRESSION_QUALITY,
                byteArrayBitmapStream);
        byte[] b = byteArrayBitmapStream.toByteArray();
        encodedImage = Base64.encodeToString(b, Base64.DEFAULT);
        return encodedImage;
    }

dan ubah string Anda menjadi bitmap:

private Bitmap getBitmapFromString(String jsonString) {
    byte[] decodedString = Base64.decode(jsonString, Base64.DEFAULT);
    Bitmap decodedByte = BitmapFactory.decodeByteArray(decodedString, 0, decodedString.length);
    return decodedByte;
}

Anda dapat menyimpan string Anda dalam file dan menyimpannya di sisi server atau ... lalu mengunduh string dan mengubahnya menjadi bitmap lagi...

person Mehdi Akbarian Rastaghi    schedule 06.04.2016
comment
Terima kasih tetapi masalahnya adalah saya tidak tahu cara mengunduh file dari array di parse. - person Liraz Shaka Amir; 07.04.2016