将android java转换为xamarin c#

我正在尝试使用可将图像上传到html页面的webview制作一个android应用.
我想我在这里找到了解决方案:Android ACTION_IMAGE_CAPTURE Intent
但是我在将所有内容转换为Xamarin C#时遇到麻烦,在这里有什么可以帮助我的吗?我感兴趣的代码是:

       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); 

更具体地说,这是我必须导入哪些类才能找到Media.TITLE,Images.Media.BUCKET_ID ….等.

解决方法:

试试Android.Provider.MediaStore

如果不在它们中,则可以使用实际的字符串,请参见the Android documentation

这是对getContentResolver Xamarin样式的调用:

this.ContentResolver.Insert(Android.Provider.MediaStore.Images.Media.ExternalContentUri, values);

对于文件的位置,请使用:

Environment.GetExternalStoragePublicDirectory(Environment.DirectoryPictures), "CameraAppDemo");

Xamarin documentation.中有使用相机意图的秘诀

上一篇:android-AppleScript“执行shell脚本”忽略PATH变量


下一篇:CodeGo.net> DialogViewController缺少后退按钮