Prendre une photo sur application android
angela_gim
Messages postés
5
Date d'inscription
Statut
Membre
Dernière intervention
-
angela_gim Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
angela_gim Messages postés 5 Date d'inscription Statut Membre Dernière intervention -
Bonjour,
je viens de débuter ma première application professionnelle sur android. Cette application consiste à prendre une photo directement et l'envoyer sur un serveur distant
j'ai fait ce code là mais lorsque j'ai exécute mon application il bloque je ne réussi pas de connaitre où le problème s'il vous plait j'a besoin de votre aide
je viens de débuter ma première application professionnelle sur android. Cette application consiste à prendre une photo directement et l'envoyer sur un serveur distant
j'ai fait ce code là mais lorsque j'ai exécute mon application il bloque je ne réussi pas de connaitre où le problème s'il vous plait j'a besoin de votre aide
package com.example.java.projet; import android.content.Intent; import android.graphics.Bitmap; import android.net.Uri; import android.os.Environment; import android.provider.MediaStore; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; import android.util.Base64; import android.view.View; import android.widget.ImageButton; import android.widget.ImageView; import android.widget.Toast; import java.io.ByteArrayOutputStream; import java.io.File; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.Date; import java.util.Locale; import static android.provider.MediaStore.Files.FileColumns.MEDIA_TYPE_IMAGE; public class MainActivity extends AppCompatActivity { private static final int CAMERA_IMAGE_REQUEST = 0; ImageButton b; ImageView img; Uri fileUri; protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); img = (ImageView) findViewById(R.id.imageView2); b = (ImageButton) findViewById(R.id.imageButton); b.setOnClickListener(new View.OnClickListener() { public void onClick(View v) { Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); fileUri = getOutputMediaFileUri(MEDIA_TYPE_IMAGE); intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri); // start the image capture Intent startActivityForResult(intent, CAMERA_IMAGE_REQUEST); } }); } private static File getOutputMediaFile(int type) { File mediaStorageDir = new File( Environment.getExternalStorageDirectory()+File.separator+".QCT"); // Create the storage directory if it does not exist if (!mediaStorageDir.exists()) { if (!mediaStorageDir.mkdirs()) { return null; } } // Create a media file name String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss", Locale.getDefault()).format(new Date()); String imageName="picture_"+ timeStamp + ".jpg"; File mediaFile; if (type == MEDIA_TYPE_IMAGE) { mediaFile = new File(mediaStorageDir.getPath() + File.separator + imageName); } else { return null; } return mediaFile; } public Uri getOutputMediaFileUri(int type) { return Uri.fromFile(getOutputMediaFile(type)); } public String getStringImage(Bitmap bmp){ ByteArrayOutputStream baos = new ByteArrayOutputStream(); bmp.compress(Bitmap.CompressFormat.JPEG, 70, baos); byte[] imageBytes = baos.toByteArray(); String encodedImage = Base64.encodeToString(imageBytes, Base64.DEFAULT); return encodedImage; } protected void onActivityResult(int requestCode, int resultCode, Intent data) { super.onActivityResult(requestCode, resultCode, data); if (requestCode == CAMERA_IMAGE_REQUEST) { if (resultCode == RESULT_OK) { try { //Getting the Bitmap from Gallery Bitmap bitmap = MediaStore.Images.Media.getBitmap(getContentResolver(), fileUri); //Setting the Bitmap to ImageView img.setImageBitmap(bitmap); } catch (IOException e) { e.printStackTrace(); Toast.makeText(getBaseContext(), e.getMessage(), Toast.LENGTH_LONG).show(); } } else if (resultCode == RESULT_CANCELED) { // user cancelled Image capture Toast.makeText(getApplicationContext(), "Vous avez annuler la capture", Toast.LENGTH_SHORT) .show(); } else { // failed to capture image Toast.makeText(getApplicationContext(), "Désolé! echec de capture photo", Toast.LENGTH_SHORT) .show(); } } } }
A voir également:
- Mediastore.extra_output
- Comment supprimer une application préinstallée sur android - Guide
- Google photo - Télécharger - Albums photo
- Android recovery - Guide
- Prendre une photo avec son pc - Guide
- Prendre une photo avec son mac - Guide
2 réponses
Hello,
As-tu regardé ce guide? https://developer.android.com/training/camera/photobasics.html
lorsque j'ai exécute mon application il bloqueC'est à dire? Quel est le souci? Un crash? As-tu regardé les logs?
As-tu regardé ce guide? https://developer.android.com/training/camera/photobasics.html