Convertir image sélectionnée dans le tableau d'octets et en string
Je suis en train de travailler sur la communication client-serveur.
Les utilisateurs peuvent sélectionner une image à partir de la galerie.
Les images sélectionnées seront enregistrées dans deux endroits, la bd locale et serveur de DB.
Si les utilisateurs de l'enregistrer, de l'image sélectionnée seront enregistrées dans la base de données locale avec chemin d'accès(String)
et aussi doit être enregistré dans la base de données du Serveur.
Le problème est que je ne sais pas comment obtenir des images de tableau d'octets pour coder à la Chaîne à transmettre l'image à côté serveur.
De la bd locale : l'Image -> Chemin(String) (C'est fait)
Serveur de base de données : Image -> Octet -> Chaine -> Envoyer à un serveur
Voici le code..
Bundle extras = getIntent().getExtras();
if (extras != null) {
id=extras.getInt("id");
inputname.setText(extras.getString("name"));
inputnote.setText(extras.getString("note"));
image = extras.getString("blob");
//Convert image into string to save path in local DB
BitmapFactory.Options op=new BitmapFactory.Options();
op.inSampleSize=8;
yourSelectedImage = BitmapFactory.decodeFile(image, op);
inputphoto.setImageBitmap(yourSelectedImage);
}
Comment définir blob dans le saveItem méthode..?
private void saveItem() {
//Client-Server - Start //////////////////////////////////////
String name = inputname.getText().toString();
String description = inputnote.getText().toString();
//Encode the image file to String !! by using Base64
String encodedImage = Base64.encodeToString(blob, Base64.DEFAULT);
//Building Parameters
List<NameValuePair> params1 = new ArrayList<NameValuePair>();
params1.add(new BasicNameValuePair("name", name));
params1.add(new BasicNameValuePair("description", description));
params1.add(new BasicNameValuePair("photo",encodedImage));
Log.v("log_tag", System.currentTimeMillis()+".jpg");
//getting JSON Object
//Note that create product url accepts POST method
JSONObject json = jsonParser.makeHttpRequest(url_create_product, "POST", params1);
//check log cat fro response
Log.d("Create Response", json.toString());
//check for success tag
try {
int success = json.getInt(TAG_SUCCESS);
Log.v("log_tag", "In the try Loop" );
if (success == 1) {
//closing this screen
finish();
} else {
//failed to create product
}
} catch (JSONException e) {
e.printStackTrace();
}
Vous en remercie d'avance.
Vous devez vous connecter pour publier un commentaire.
À convertir l'image à chaîne courte suivante de code.
Maintenant, vous avez encodedImage chaîne de l'image.
Votre code de "saveItem()" ressemble à ce qui suit.