public string GetFileDescription()

in Apps/Contoso.Forms.Demo/Contoso.Forms.Demo.Droid/FilePicker.cs [80:123]


        public string GetFileDescription(string file)
        {
            if (string.IsNullOrEmpty(file))
            {
                return null;
            }
            var uri = Android.Net.Uri.Parse(file);
            var activity = Xamarin.Forms.Forms.Context as MainActivity;

            string name = null;
            string size = null;
            var cursor = activity.ContentResolver.Query(uri, null, null, null, null);
            try
            {
                if (cursor != null && cursor.MoveToFirst())
                {
                    var nameIndex = cursor.GetColumnIndex(OpenableColumns.DisplayName);
                    var sizeIndex = cursor.GetColumnIndex(OpenableColumns.Size);
                    if (!cursor.IsNull(nameIndex))
                    {
                        name = cursor.GetString(nameIndex);
                    }
                    if (!cursor.IsNull(sizeIndex))
                    {
                        size = Formatter.FormatFileSize(activity, cursor.GetLong(sizeIndex));
                    }
                }
            }
            finally
            {
                cursor?.Close();
            }

            string result = "";
            if (name != null)
            {
                result += "File: " + name;
            }
            if (size != null)
            {
                result += " Size: " + size;
            }
            return result;
        }