Traduire Android Java en Xamarin C #
Question
J'essaie de créer une application Android avec un webview qui peut télécharger des images sur une page HTML. Je pense que j'ai trouvé une solution ici: Android Action_Image_capture Intention Mais j'ai du mal à traduire tout en Xamarin C #, tout peut m'aider ici?Le code que je suis utile est:
File imageDirectory = new File("/sdcard/signifio");
String path = imageDirectory.toString().toLowerCase();
String name = imageDirectory.getName().toLowerCase();
ContentValues values = new ContentValues();
values.put(Media.TITLE, "Image");
values.put(Images.Media.BUCKET_ID, path.hashCode());
values.put(Images.Media.BUCKET_DISPLAY_NAME,name);
values.put(Images.Media.MIME_TYPE, "image/jpeg");
values.put(Media.DESCRIPTION, "Image capture by camera");
values.put("_data", "/sdcard/signifio/1111.jpg");
uri = getContentResolver().insert( Media.EXTERNAL_CONTENT_URI , values);
Intent i = new Intent("android.media.action.IMAGE_CAPTURE");
i.putExtra(MediaStore.EXTRA_OUTPUT, uri);
startActivityForResult(i, 0);
plus spécifique c'est ce que les classes que je dois importer pour trouver media.title, images.media.bucket_id ... et ainsi de suite.
La solution
Essayez Android.Provider.MediaStore
S'ils ne sont pas dans leur choix, vous pouvez utiliser les chaînes actuelles, voir la documentation Android
Voici l'appel à GetContentresolver Xamarin Style:
this.ContentResolver.Insert(Android.Provider.MediaStore.Images.Media.ExternalContentUri, values);
pour l'emplacement du fichier utilise:
Environment.GetExternalStoragePublicDirectory(Environment.DirectoryPictures), "CameraAppDemo");
Il existe une recette d'utilisation d'une caméra intention dans le Documentation Xamarin.