Implement Open File in Launcher. Fixes #601 & #425 (#773)

* Implement Open File in Launcher.  Fixed #601 & #425

* Add title to open file request for android launcher

* Clean FileBase and AttachmentName. Added documentation.

* Fix encoding

* Remove namesapces that aren' t needed
This commit is contained in:
James Montemagno 2019-06-13 12:08:30 -07:00 коммит произвёл GitHub
Родитель ac795bc661
Коммит 6d34616d82
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
34 изменённых файлов: 3010 добавлений и 288 удалений

Разница между файлами не показана из-за своего большого размера Загрузить разницу

Просмотреть файл

@ -22,7 +22,8 @@ namespace Samples
// Enable currently experimental features
ExperimentalFeatures.Enable(
ExperimentalFeatures.EmailAttachments,
ExperimentalFeatures.ShareFileRequest);
ExperimentalFeatures.ShareFileRequest,
ExperimentalFeatures.OpenFileRequest);
VersionTracking.Track();

Просмотреть файл

@ -16,6 +16,7 @@
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="Auto" />
<RowDefinition Height="*" />
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
@ -25,6 +26,18 @@
<Button Grid.Row="1" Grid.ColumnSpan="2" Text="Check Launch" Command="{Binding CanLaunchCommand}"/>
<Button Grid.Row="2" Grid.Column="0" Text="Launch Browser" Command="{Binding LaunchBrowserCommand}"/>
<Button Grid.Row="2" Grid.Column="1" Text="Launch Mail" Command="{Binding LaunchMailCommand}"/>
<StackLayout Grid.Row="3" Grid.ColumnSpan="2">
<Label Text="Open File" FontAttributes="Bold" Margin="0,6,0,0" />
<Label Text="File Name:" />
<Entry Text="{Binding FileAttachmentName}" />
<Label Text="File Contents:" />
<Editor Text="{Binding FileAttachmentContents}" Keyboard="Chat"
VerticalOptions="FillAndExpand" HeightRequest="200" />
<Button Text="Open File" Command="{Binding LaunchFileCommand}" />
</StackLayout>
</Grid>
</ScrollView>
</StackLayout>

Просмотреть файл

@ -103,7 +103,7 @@ namespace Samples.ViewModel
$"Heading: {(location.Course.HasValue ? location.Course.Value.ToString() : notAvailable)}\n" +
$"Speed: {(location.Speed.HasValue ? location.Speed.Value.ToString() : notAvailable)}\n" +
$"Date (UTC): {location.Timestamp:d}\n" +
$"Time (UTC): {location.Timestamp:T}" +
$"Time (UTC): {location.Timestamp:T}\n" +
$"Moking Provider: {location.IsFromMockProvider}";
}

Просмотреть файл

@ -1,4 +1,5 @@
using System;
using System.IO;
using System.Windows.Input;
using Xamarin.Essentials;
using Xamarin.Forms;
@ -7,6 +8,9 @@ namespace Samples.ViewModel
{
public class LauncherViewModel : BaseViewModel
{
string fileAttachmentName;
string fileAttachmentContents;
public string LaunchUri { get; set; }
public ICommand LaunchCommand { get; }
@ -17,12 +21,27 @@ namespace Samples.ViewModel
public ICommand LaunchBrowserCommand { get; }
public ICommand LaunchFileCommand { get; }
public LauncherViewModel()
{
LaunchCommand = new Command(OnLaunch);
LaunchMailCommand = new Command(OnLaunchMail);
LaunchBrowserCommand = new Command(OnLaunchBrowser);
CanLaunchCommand = new Command(CanLaunch);
LaunchFileCommand = new Command(OnFileRequest);
}
public string FileAttachmentContents
{
get => fileAttachmentContents;
set => SetProperty(ref fileAttachmentContents, value);
}
public string FileAttachmentName
{
get => fileAttachmentName;
set => SetProperty(ref fileAttachmentName, value);
}
async void OnLaunchBrowser()
@ -59,5 +78,21 @@ namespace Samples.ViewModel
await DisplayAlertAsync($"Uri {LaunchUri} could not be verified as launchable: {ex}");
}
}
async void OnFileRequest()
{
if (!string.IsNullOrWhiteSpace(FileAttachmentContents))
{
// create a temprary file
var fn = string.IsNullOrWhiteSpace(FileAttachmentName) ? "Attachment.txt" : FileAttachmentName.Trim();
var file = Path.Combine(FileSystem.CacheDirectory, fn);
File.WriteAllText(file, FileAttachmentContents);
await Launcher.OpenAsync(new OpenFileRequest
{
File = new ReadOnlyFile(file)
});
}
}
}
}

33
Tests/Launcher_Tests.cs Normal file
Просмотреть файл

@ -0,0 +1,33 @@
using System;
using System.Threading.Tasks;
using Xamarin.Essentials;
using Xunit;
namespace Tests
{
public class Launcher_Tests
{
[Fact]
public async Task CanOpen_String_NetStandard() =>
await Assert.ThrowsAsync<NotImplementedInReferenceAssemblyException>(() => Launcher.CanOpenAsync("http://www.xamarin.com"));
[Fact]
public async Task CanOpen_Uri_NetStandard() =>
await Assert.ThrowsAsync<NotImplementedInReferenceAssemblyException>(() => Launcher.CanOpenAsync(new Uri("http://www.xamarin.com")));
[Fact]
public async Task Open_String_NetStandard() =>
await Assert.ThrowsAsync<NotImplementedInReferenceAssemblyException>(() => Launcher.OpenAsync("http://www.xamarin.com"));
[Fact]
public async Task Open_Uri_NetStandard() =>
await Assert.ThrowsAsync<NotImplementedInReferenceAssemblyException>(() => Launcher.OpenAsync(new Uri("http://www.xamarin.com")));
[Fact]
public async Task Open_File_NetStandard()
{
TestUtils.EnableExperimentalFeatures();
await Assert.ThrowsAsync<NotImplementedInReferenceAssemblyException>(() => Launcher.OpenAsync(new OpenFileRequest()));
}
}
}

Просмотреть файл

@ -20,7 +20,10 @@ namespace Tests
await Assert.ThrowsAsync<NotImplementedInReferenceAssemblyException>(() => Share.RequestAsync(new ShareTextRequest()));
[Fact]
public async Task Request_File_Request_NetStandard() =>
await Assert.ThrowsAsync<InvalidOperationException>(() => Share.RequestAsync(new ShareFileRequest()));
public async Task Request_File_Request_NetStandard()
{
TestUtils.EnableExperimentalFeatures();
await Assert.ThrowsAsync<NotImplementedInReferenceAssemblyException>(() => Share.RequestAsync(new ShareFileRequest()));
}
}
}

18
Tests/Utils.cs Normal file
Просмотреть файл

@ -0,0 +1,18 @@
using System;
using System.Collections.Generic;
using System.Text;
using Xamarin.Essentials;
namespace Tests
{
public static class TestUtils
{
public static void EnableExperimentalFeatures()
{
ExperimentalFeatures.Enable(
ExperimentalFeatures.EmailAttachments,
ExperimentalFeatures.ShareFileRequest,
ExperimentalFeatures.OpenFileRequest);
}
}
}

Просмотреть файл

@ -99,27 +99,5 @@ namespace Xamarin.Essentials
{
ExperimentalFeatures.VerifyEnabled(ExperimentalFeatures.EmailAttachments);
}
string attachmentName;
public string AttachmentName
{
get => GetAttachmentName();
set => attachmentName = value;
}
internal string GetAttachmentName()
{
// try the provided file name
if (!string.IsNullOrWhiteSpace(attachmentName))
return attachmentName;
// try get from the path
if (!string.IsNullOrWhiteSpace(FullPath))
return Path.GetFileName(FullPath);
// this should never happen as the path is validated in the constructor
throw new InvalidOperationException($"Unable to determine the attachment file name from '{FullPath}'.");
}
}
}

Просмотреть файл

@ -75,5 +75,45 @@ namespace Xamarin.Essentials
// leave it up to the sender
return null;
}
string attachmentName;
internal string AttachmentName
{
get => GetAttachmentName();
set => attachmentName = value;
}
internal string GetAttachmentName()
{
// try the provided file name
if (!string.IsNullOrWhiteSpace(attachmentName))
return attachmentName;
// try get from the path
if (!string.IsNullOrWhiteSpace(FullPath))
return Path.GetFileName(FullPath);
// this should never happen as the path is validated in the constructor
throw new InvalidOperationException($"Unable to determine the attachment file name from '{FullPath}'.");
}
}
public class ReadOnlyFile : FileBase
{
public ReadOnlyFile(string fullPath)
: base(fullPath)
{
}
public ReadOnlyFile(string fullPath, string contentType)
: base(fullPath, contentType)
{
}
public ReadOnlyFile(FileBase file)
: base(file)
{
}
}
}

Просмотреть файл

@ -29,5 +29,21 @@ namespace Xamarin.Essentials
Platform.AppContext.StartActivity(intent);
return Task.CompletedTask;
}
static Task PlatformOpenAsync(OpenFileRequest request)
{
var contentUri = Platform.GetShareableFileUri(request.File.FullPath);
var intent = new Intent(Intent.ActionView);
intent.SetDataAndType(contentUri, request.File.ContentType);
intent.SetFlags(ActivityFlags.GrantReadUriPermission);
var chooserIntent = Intent.CreateChooser(intent, request.Title ?? string.Empty);
chooserIntent.SetFlags(ActivityFlags.ClearTop);
chooserIntent.SetFlags(ActivityFlags.NewTask);
Platform.AppContext.StartActivity(chooserIntent);
return Task.CompletedTask;
}
}
}

Просмотреть файл

@ -26,5 +26,18 @@ namespace Xamarin.Essentials
return new NSUrl(uri.AbsoluteUri);
}
}
static Task PlatformOpenAsync(OpenFileRequest request)
{
var fileUrl = NSUrl.FromFilename(request.File.FullPath);
var documentController = UIDocumentInteractionController.FromUrl(fileUrl);
documentController.Uti = request.File.ContentType;
var vc = Platform.GetCurrentViewController();
documentController.PresentOpenInMenu(vc.View.Frame, vc.View, true);
return Task.CompletedTask;
}
}
}

Просмотреть файл

@ -5,8 +5,13 @@ namespace Xamarin.Essentials
{
public static partial class Launcher
{
static Task<bool> PlatformCanOpenAsync(Uri uri) => throw new NotImplementedInReferenceAssemblyException();
static Task<bool> PlatformCanOpenAsync(Uri uri) =>
throw new NotImplementedInReferenceAssemblyException();
static Task PlatformOpenAsync(Uri uri) => throw new NotImplementedInReferenceAssemblyException();
static Task PlatformOpenAsync(Uri uri) =>
throw new NotImplementedInReferenceAssemblyException();
static Task PlatformOpenAsync(OpenFileRequest request) =>
throw new NotImplementedInReferenceAssemblyException();
}
}

Просмотреть файл

@ -1,4 +1,5 @@
using System;
using System.IO;
using System.Threading.Tasks;
namespace Xamarin.Essentials
@ -36,5 +37,38 @@ namespace Xamarin.Essentials
return PlatformOpenAsync(uri);
}
public static Task OpenAsync(OpenFileRequest request)
{
ExperimentalFeatures.VerifyEnabled(ExperimentalFeatures.ShareFileRequest);
return PlatformOpenAsync(request);
}
}
public class OpenFileRequest
{
public OpenFileRequest()
{
ExperimentalFeatures.VerifyEnabled(ExperimentalFeatures.OpenFileRequest);
}
public OpenFileRequest(string title, ReadOnlyFile file)
{
ExperimentalFeatures.VerifyEnabled(ExperimentalFeatures.OpenFileRequest);
Title = title;
File = file;
}
public OpenFileRequest(string title, FileBase file)
{
ExperimentalFeatures.VerifyEnabled(ExperimentalFeatures.OpenFileRequest);
Title = title;
File = new ReadOnlyFile(file);
}
public string Title { get; set; }
public ReadOnlyFile File { get; set; }
}
}

Просмотреть файл

@ -1,5 +1,7 @@
using System;
using System.Threading.Tasks;
using Windows.ApplicationModel.DataTransfer;
using Windows.Storage;
using Windows.System;
using WinLauncher = Windows.System.Launcher;
@ -15,5 +17,12 @@ namespace Xamarin.Essentials
static Task PlatformOpenAsync(Uri uri) =>
WinLauncher.LaunchUriAsync(uri).AsTask();
static async Task PlatformOpenAsync(OpenFileRequest request)
{
var storageFile = request.File.File ?? await StorageFile.GetFileFromPathAsync(request.File.FullPath);
await WinLauncher.LaunchFileAsync(storageFile).AsTask();
}
}
}

Просмотреть файл

@ -100,27 +100,5 @@ namespace Xamarin.Essentials
{
ExperimentalFeatures.VerifyEnabled(ExperimentalFeatures.ShareFileRequest);
}
string attachmentName;
public string AttachmentName
{
get => GetAttachmentName();
set => attachmentName = value;
}
internal string GetAttachmentName()
{
// try the provided file name
if (!string.IsNullOrWhiteSpace(attachmentName))
return attachmentName;
// try get from the path
if (!string.IsNullOrWhiteSpace(FullPath))
return Path.GetFileName(FullPath);
// this should never happen as the path is validated in the constructor
throw new InvalidOperationException($"Unable to determine the attachment file name from '{FullPath}'.");
}
}
}

Просмотреть файл

@ -8,6 +8,7 @@ namespace Xamarin.Essentials
public static class ExperimentalFeatures
{
public const string ShareFileRequest = "ShareFileRequest_Experimental";
public const string OpenFileRequest = "OpenFileRequest_Experimental";
public const string EmailAttachments = "EmailAttachments_Experimental";
static List<string> enabledFeatures;

Просмотреть файл

@ -260,7 +260,6 @@
<Member Id="M:Xamarin.Essentials.EmailAttachment.#ctor(System.String)" />
<Member Id="M:Xamarin.Essentials.EmailAttachment.#ctor(System.String,System.String)" />
<Member Id="M:Xamarin.Essentials.EmailAttachment.#ctor(Xamarin.Essentials.FileBase)" />
<Member Id="P:Xamarin.Essentials.EmailAttachment.AttachmentName" />
</Type>
<Type Name="Xamarin.Essentials.EmailBodyFormat" Id="T:Xamarin.Essentials.EmailBodyFormat">
<Member Id="F:Xamarin.Essentials.EmailBodyFormat.Html" />
@ -287,6 +286,12 @@
<Member Id="M:Xamarin.Essentials.EnergySaverStatusChangedEventArgs.ToString" />
<Member Id="P:Xamarin.Essentials.EnergySaverStatusChangedEventArgs.EnergySaverStatus" />
</Type>
<Type Name="Xamarin.Essentials.ExperimentalFeatures" Id="T:Xamarin.Essentials.ExperimentalFeatures">
<Member Id="F:Xamarin.Essentials.ExperimentalFeatures.EmailAttachments" />
<Member Id="F:Xamarin.Essentials.ExperimentalFeatures.OpenFileRequest" />
<Member Id="F:Xamarin.Essentials.ExperimentalFeatures.ShareFileRequest" />
<Member Id="M:Xamarin.Essentials.ExperimentalFeatures.Enable(System.String[])" />
</Type>
<Type Name="Xamarin.Essentials.FeatureNotEnabledException" Id="T:Xamarin.Essentials.FeatureNotEnabledException">
<Member Id="M:Xamarin.Essentials.FeatureNotEnabledException.#ctor" />
<Member Id="M:Xamarin.Essentials.FeatureNotEnabledException.#ctor(System.String)" />
@ -373,6 +378,7 @@
<Member Id="M:Xamarin.Essentials.Launcher.CanOpenAsync(System.Uri)" />
<Member Id="M:Xamarin.Essentials.Launcher.OpenAsync(System.String)" />
<Member Id="M:Xamarin.Essentials.Launcher.OpenAsync(System.Uri)" />
<Member Id="M:Xamarin.Essentials.Launcher.OpenAsync(Xamarin.Essentials.OpenFileRequest)" />
</Type>
<Type Name="Xamarin.Essentials.Locale" Id="T:Xamarin.Essentials.Locale">
<Member Id="P:Xamarin.Essentials.Locale.Country" />
@ -461,6 +467,13 @@
<Type Name="Xamarin.Essentials.NotImplementedInReferenceAssemblyException" Id="T:Xamarin.Essentials.NotImplementedInReferenceAssemblyException">
<Member Id="M:Xamarin.Essentials.NotImplementedInReferenceAssemblyException.#ctor" />
</Type>
<Type Name="Xamarin.Essentials.OpenFileRequest" Id="T:Xamarin.Essentials.OpenFileRequest">
<Member Id="M:Xamarin.Essentials.OpenFileRequest.#ctor" />
<Member Id="M:Xamarin.Essentials.OpenFileRequest.#ctor(System.String,Xamarin.Essentials.FileBase)" />
<Member Id="M:Xamarin.Essentials.OpenFileRequest.#ctor(System.String,Xamarin.Essentials.ReadOnlyFile)" />
<Member Id="P:Xamarin.Essentials.OpenFileRequest.File" />
<Member Id="P:Xamarin.Essentials.OpenFileRequest.Title" />
</Type>
<Type Name="Xamarin.Essentials.OrientationSensor" Id="T:Xamarin.Essentials.OrientationSensor">
<Member Id="E:Xamarin.Essentials.OrientationSensor.ReadingChanged" />
<Member Id="M:Xamarin.Essentials.OrientationSensor.Start(Xamarin.Essentials.SensorSpeed)" />
@ -555,6 +568,11 @@
<Member Id="M:Xamarin.Essentials.Preferences.Set(System.String,System.String)" />
<Member Id="M:Xamarin.Essentials.Preferences.Set(System.String,System.String,System.String)" />
</Type>
<Type Name="Xamarin.Essentials.ReadOnlyFile" Id="T:Xamarin.Essentials.ReadOnlyFile">
<Member Id="M:Xamarin.Essentials.ReadOnlyFile.#ctor(System.String)" />
<Member Id="M:Xamarin.Essentials.ReadOnlyFile.#ctor(System.String,System.String)" />
<Member Id="M:Xamarin.Essentials.ReadOnlyFile.#ctor(Xamarin.Essentials.FileBase)" />
</Type>
<Type Name="Xamarin.Essentials.RectangleExtensions" Id="T:Xamarin.Essentials.RectangleExtensions">
<Member Id="M:Xamarin.Essentials.RectangleExtensions.ToPlatformRectangle(System.Drawing.Rectangle)" />
<Member Id="M:Xamarin.Essentials.RectangleExtensions.ToPlatformRectangleF(System.Drawing.RectangleF)" />
@ -583,7 +601,6 @@
<Member Id="M:Xamarin.Essentials.ShareFile.#ctor(System.String)" />
<Member Id="M:Xamarin.Essentials.ShareFile.#ctor(System.String,System.String)" />
<Member Id="M:Xamarin.Essentials.ShareFile.#ctor(Xamarin.Essentials.FileBase)" />
<Member Id="P:Xamarin.Essentials.ShareFile.AttachmentName" />
</Type>
<Type Name="Xamarin.Essentials.ShareFileRequest" Id="T:Xamarin.Essentials.ShareFileRequest">
<Member Id="M:Xamarin.Essentials.ShareFileRequest.#ctor" />

Просмотреть файл

@ -261,7 +261,6 @@
<Member Id="M:Xamarin.Essentials.EmailAttachment.#ctor(System.String)" />
<Member Id="M:Xamarin.Essentials.EmailAttachment.#ctor(System.String,System.String)" />
<Member Id="M:Xamarin.Essentials.EmailAttachment.#ctor(Xamarin.Essentials.FileBase)" />
<Member Id="P:Xamarin.Essentials.EmailAttachment.AttachmentName" />
</Type>
<Type Name="Xamarin.Essentials.EmailBodyFormat" Id="T:Xamarin.Essentials.EmailBodyFormat">
<Member Id="F:Xamarin.Essentials.EmailBodyFormat.Html" />
@ -288,6 +287,12 @@
<Member Id="M:Xamarin.Essentials.EnergySaverStatusChangedEventArgs.ToString" />
<Member Id="P:Xamarin.Essentials.EnergySaverStatusChangedEventArgs.EnergySaverStatus" />
</Type>
<Type Name="Xamarin.Essentials.ExperimentalFeatures" Id="T:Xamarin.Essentials.ExperimentalFeatures">
<Member Id="F:Xamarin.Essentials.ExperimentalFeatures.EmailAttachments" />
<Member Id="F:Xamarin.Essentials.ExperimentalFeatures.OpenFileRequest" />
<Member Id="F:Xamarin.Essentials.ExperimentalFeatures.ShareFileRequest" />
<Member Id="M:Xamarin.Essentials.ExperimentalFeatures.Enable(System.String[])" />
</Type>
<Type Name="Xamarin.Essentials.FeatureNotEnabledException" Id="T:Xamarin.Essentials.FeatureNotEnabledException">
<Member Id="M:Xamarin.Essentials.FeatureNotEnabledException.#ctor" />
<Member Id="M:Xamarin.Essentials.FeatureNotEnabledException.#ctor(System.String)" />
@ -365,6 +370,7 @@
<Member Id="M:Xamarin.Essentials.Launcher.CanOpenAsync(System.Uri)" />
<Member Id="M:Xamarin.Essentials.Launcher.OpenAsync(System.String)" />
<Member Id="M:Xamarin.Essentials.Launcher.OpenAsync(System.Uri)" />
<Member Id="M:Xamarin.Essentials.Launcher.OpenAsync(Xamarin.Essentials.OpenFileRequest)" />
</Type>
<Type Name="Xamarin.Essentials.Locale" Id="T:Xamarin.Essentials.Locale">
<Member Id="P:Xamarin.Essentials.Locale.Country" />
@ -453,6 +459,13 @@
<Type Name="Xamarin.Essentials.NotImplementedInReferenceAssemblyException" Id="T:Xamarin.Essentials.NotImplementedInReferenceAssemblyException">
<Member Id="M:Xamarin.Essentials.NotImplementedInReferenceAssemblyException.#ctor" />
</Type>
<Type Name="Xamarin.Essentials.OpenFileRequest" Id="T:Xamarin.Essentials.OpenFileRequest">
<Member Id="M:Xamarin.Essentials.OpenFileRequest.#ctor" />
<Member Id="M:Xamarin.Essentials.OpenFileRequest.#ctor(System.String,Xamarin.Essentials.FileBase)" />
<Member Id="M:Xamarin.Essentials.OpenFileRequest.#ctor(System.String,Xamarin.Essentials.ReadOnlyFile)" />
<Member Id="P:Xamarin.Essentials.OpenFileRequest.File" />
<Member Id="P:Xamarin.Essentials.OpenFileRequest.Title" />
</Type>
<Type Name="Xamarin.Essentials.OrientationSensor" Id="T:Xamarin.Essentials.OrientationSensor">
<Member Id="E:Xamarin.Essentials.OrientationSensor.ReadingChanged" />
<Member Id="M:Xamarin.Essentials.OrientationSensor.Start(Xamarin.Essentials.SensorSpeed)" />
@ -543,6 +556,11 @@
<Member Id="M:Xamarin.Essentials.Preferences.Set(System.String,System.String)" />
<Member Id="M:Xamarin.Essentials.Preferences.Set(System.String,System.String,System.String)" />
</Type>
<Type Name="Xamarin.Essentials.ReadOnlyFile" Id="T:Xamarin.Essentials.ReadOnlyFile">
<Member Id="M:Xamarin.Essentials.ReadOnlyFile.#ctor(System.String)" />
<Member Id="M:Xamarin.Essentials.ReadOnlyFile.#ctor(System.String,System.String)" />
<Member Id="M:Xamarin.Essentials.ReadOnlyFile.#ctor(Xamarin.Essentials.FileBase)" />
</Type>
<Type Name="Xamarin.Essentials.RectangleExtensions" Id="T:Xamarin.Essentials.RectangleExtensions">
<Member Id="M:Xamarin.Essentials.RectangleExtensions.ToPlatformRectangle(System.Drawing.Rectangle)" />
<Member Id="M:Xamarin.Essentials.RectangleExtensions.ToPlatformRectangle(System.Drawing.RectangleF)" />
@ -573,7 +591,6 @@
<Member Id="M:Xamarin.Essentials.ShareFile.#ctor(System.String)" />
<Member Id="M:Xamarin.Essentials.ShareFile.#ctor(System.String,System.String)" />
<Member Id="M:Xamarin.Essentials.ShareFile.#ctor(Xamarin.Essentials.FileBase)" />
<Member Id="P:Xamarin.Essentials.ShareFile.AttachmentName" />
</Type>
<Type Name="Xamarin.Essentials.ShareFileRequest" Id="T:Xamarin.Essentials.ShareFileRequest">
<Member Id="M:Xamarin.Essentials.ShareFileRequest.#ctor" />

Просмотреть файл

@ -260,7 +260,6 @@
<Member Id="M:Xamarin.Essentials.EmailAttachment.#ctor(System.String)" />
<Member Id="M:Xamarin.Essentials.EmailAttachment.#ctor(System.String,System.String)" />
<Member Id="M:Xamarin.Essentials.EmailAttachment.#ctor(Xamarin.Essentials.FileBase)" />
<Member Id="P:Xamarin.Essentials.EmailAttachment.AttachmentName" />
</Type>
<Type Name="Xamarin.Essentials.EmailBodyFormat" Id="T:Xamarin.Essentials.EmailBodyFormat">
<Member Id="F:Xamarin.Essentials.EmailBodyFormat.Html" />
@ -287,6 +286,12 @@
<Member Id="M:Xamarin.Essentials.EnergySaverStatusChangedEventArgs.ToString" />
<Member Id="P:Xamarin.Essentials.EnergySaverStatusChangedEventArgs.EnergySaverStatus" />
</Type>
<Type Name="Xamarin.Essentials.ExperimentalFeatures" Id="T:Xamarin.Essentials.ExperimentalFeatures">
<Member Id="F:Xamarin.Essentials.ExperimentalFeatures.EmailAttachments" />
<Member Id="F:Xamarin.Essentials.ExperimentalFeatures.OpenFileRequest" />
<Member Id="F:Xamarin.Essentials.ExperimentalFeatures.ShareFileRequest" />
<Member Id="M:Xamarin.Essentials.ExperimentalFeatures.Enable(System.String[])" />
</Type>
<Type Name="Xamarin.Essentials.FeatureNotEnabledException" Id="T:Xamarin.Essentials.FeatureNotEnabledException">
<Member Id="M:Xamarin.Essentials.FeatureNotEnabledException.#ctor" />
<Member Id="M:Xamarin.Essentials.FeatureNotEnabledException.#ctor(System.String)" />
@ -364,6 +369,7 @@
<Member Id="M:Xamarin.Essentials.Launcher.CanOpenAsync(System.Uri)" />
<Member Id="M:Xamarin.Essentials.Launcher.OpenAsync(System.String)" />
<Member Id="M:Xamarin.Essentials.Launcher.OpenAsync(System.Uri)" />
<Member Id="M:Xamarin.Essentials.Launcher.OpenAsync(Xamarin.Essentials.OpenFileRequest)" />
</Type>
<Type Name="Xamarin.Essentials.Locale" Id="T:Xamarin.Essentials.Locale">
<Member Id="P:Xamarin.Essentials.Locale.Country" />
@ -452,6 +458,13 @@
<Type Name="Xamarin.Essentials.NotImplementedInReferenceAssemblyException" Id="T:Xamarin.Essentials.NotImplementedInReferenceAssemblyException">
<Member Id="M:Xamarin.Essentials.NotImplementedInReferenceAssemblyException.#ctor" />
</Type>
<Type Name="Xamarin.Essentials.OpenFileRequest" Id="T:Xamarin.Essentials.OpenFileRequest">
<Member Id="M:Xamarin.Essentials.OpenFileRequest.#ctor" />
<Member Id="M:Xamarin.Essentials.OpenFileRequest.#ctor(System.String,Xamarin.Essentials.FileBase)" />
<Member Id="M:Xamarin.Essentials.OpenFileRequest.#ctor(System.String,Xamarin.Essentials.ReadOnlyFile)" />
<Member Id="P:Xamarin.Essentials.OpenFileRequest.File" />
<Member Id="P:Xamarin.Essentials.OpenFileRequest.Title" />
</Type>
<Type Name="Xamarin.Essentials.OrientationSensor" Id="T:Xamarin.Essentials.OrientationSensor">
<Member Id="E:Xamarin.Essentials.OrientationSensor.ReadingChanged" />
<Member Id="M:Xamarin.Essentials.OrientationSensor.Start(Xamarin.Essentials.SensorSpeed)" />
@ -544,6 +557,11 @@
<Member Id="M:Xamarin.Essentials.Preferences.Set(System.String,System.String)" />
<Member Id="M:Xamarin.Essentials.Preferences.Set(System.String,System.String,System.String)" />
</Type>
<Type Name="Xamarin.Essentials.ReadOnlyFile" Id="T:Xamarin.Essentials.ReadOnlyFile">
<Member Id="M:Xamarin.Essentials.ReadOnlyFile.#ctor(System.String)" />
<Member Id="M:Xamarin.Essentials.ReadOnlyFile.#ctor(System.String,System.String)" />
<Member Id="M:Xamarin.Essentials.ReadOnlyFile.#ctor(Xamarin.Essentials.FileBase)" />
</Type>
<Type Name="Xamarin.Essentials.RectangleExtensions" Id="T:Xamarin.Essentials.RectangleExtensions">
<Member Id="M:Xamarin.Essentials.RectangleExtensions.ToPlatformRectangle(System.Drawing.Rectangle)" />
<Member Id="M:Xamarin.Essentials.RectangleExtensions.ToPlatformRectangle(System.Drawing.RectangleF)" />
@ -572,7 +590,6 @@
<Member Id="M:Xamarin.Essentials.ShareFile.#ctor(System.String)" />
<Member Id="M:Xamarin.Essentials.ShareFile.#ctor(System.String,System.String)" />
<Member Id="M:Xamarin.Essentials.ShareFile.#ctor(Xamarin.Essentials.FileBase)" />
<Member Id="P:Xamarin.Essentials.ShareFile.AttachmentName" />
</Type>
<Type Name="Xamarin.Essentials.ShareFileRequest" Id="T:Xamarin.Essentials.ShareFileRequest">
<Member Id="M:Xamarin.Essentials.ShareFileRequest.#ctor" />

Просмотреть файл

@ -258,7 +258,6 @@
<Member Id="M:Xamarin.Essentials.EmailAttachment.#ctor(System.String)" />
<Member Id="M:Xamarin.Essentials.EmailAttachment.#ctor(System.String,System.String)" />
<Member Id="M:Xamarin.Essentials.EmailAttachment.#ctor(Xamarin.Essentials.FileBase)" />
<Member Id="P:Xamarin.Essentials.EmailAttachment.AttachmentName" />
</Type>
<Type Name="Xamarin.Essentials.EmailBodyFormat" Id="T:Xamarin.Essentials.EmailBodyFormat">
<Member Id="F:Xamarin.Essentials.EmailBodyFormat.Html" />
@ -285,6 +284,12 @@
<Member Id="M:Xamarin.Essentials.EnergySaverStatusChangedEventArgs.ToString" />
<Member Id="P:Xamarin.Essentials.EnergySaverStatusChangedEventArgs.EnergySaverStatus" />
</Type>
<Type Name="Xamarin.Essentials.ExperimentalFeatures" Id="T:Xamarin.Essentials.ExperimentalFeatures">
<Member Id="F:Xamarin.Essentials.ExperimentalFeatures.EmailAttachments" />
<Member Id="F:Xamarin.Essentials.ExperimentalFeatures.OpenFileRequest" />
<Member Id="F:Xamarin.Essentials.ExperimentalFeatures.ShareFileRequest" />
<Member Id="M:Xamarin.Essentials.ExperimentalFeatures.Enable(System.String[])" />
</Type>
<Type Name="Xamarin.Essentials.FeatureNotEnabledException" Id="T:Xamarin.Essentials.FeatureNotEnabledException">
<Member Id="M:Xamarin.Essentials.FeatureNotEnabledException.#ctor" />
<Member Id="M:Xamarin.Essentials.FeatureNotEnabledException.#ctor(System.String)" />
@ -362,6 +367,7 @@
<Member Id="M:Xamarin.Essentials.Launcher.CanOpenAsync(System.Uri)" />
<Member Id="M:Xamarin.Essentials.Launcher.OpenAsync(System.String)" />
<Member Id="M:Xamarin.Essentials.Launcher.OpenAsync(System.Uri)" />
<Member Id="M:Xamarin.Essentials.Launcher.OpenAsync(Xamarin.Essentials.OpenFileRequest)" />
</Type>
<Type Name="Xamarin.Essentials.Locale" Id="T:Xamarin.Essentials.Locale">
<Member Id="P:Xamarin.Essentials.Locale.Country" />
@ -450,6 +456,13 @@
<Type Name="Xamarin.Essentials.NotImplementedInReferenceAssemblyException" Id="T:Xamarin.Essentials.NotImplementedInReferenceAssemblyException">
<Member Id="M:Xamarin.Essentials.NotImplementedInReferenceAssemblyException.#ctor" />
</Type>
<Type Name="Xamarin.Essentials.OpenFileRequest" Id="T:Xamarin.Essentials.OpenFileRequest">
<Member Id="M:Xamarin.Essentials.OpenFileRequest.#ctor" />
<Member Id="M:Xamarin.Essentials.OpenFileRequest.#ctor(System.String,Xamarin.Essentials.FileBase)" />
<Member Id="M:Xamarin.Essentials.OpenFileRequest.#ctor(System.String,Xamarin.Essentials.ReadOnlyFile)" />
<Member Id="P:Xamarin.Essentials.OpenFileRequest.File" />
<Member Id="P:Xamarin.Essentials.OpenFileRequest.Title" />
</Type>
<Type Name="Xamarin.Essentials.OrientationSensor" Id="T:Xamarin.Essentials.OrientationSensor">
<Member Id="E:Xamarin.Essentials.OrientationSensor.ReadingChanged" />
<Member Id="M:Xamarin.Essentials.OrientationSensor.Start(Xamarin.Essentials.SensorSpeed)" />
@ -533,6 +546,11 @@
<Member Id="M:Xamarin.Essentials.Preferences.Set(System.String,System.String)" />
<Member Id="M:Xamarin.Essentials.Preferences.Set(System.String,System.String,System.String)" />
</Type>
<Type Name="Xamarin.Essentials.ReadOnlyFile" Id="T:Xamarin.Essentials.ReadOnlyFile">
<Member Id="M:Xamarin.Essentials.ReadOnlyFile.#ctor(System.String)" />
<Member Id="M:Xamarin.Essentials.ReadOnlyFile.#ctor(System.String,System.String)" />
<Member Id="M:Xamarin.Essentials.ReadOnlyFile.#ctor(Xamarin.Essentials.FileBase)" />
</Type>
<Type Name="Xamarin.Essentials.SecureStorage" Id="T:Xamarin.Essentials.SecureStorage">
<Member Id="M:Xamarin.Essentials.SecureStorage.GetAsync(System.String)" />
<Member Id="M:Xamarin.Essentials.SecureStorage.Remove(System.String)" />
@ -555,7 +573,6 @@
<Member Id="M:Xamarin.Essentials.ShareFile.#ctor(System.String)" />
<Member Id="M:Xamarin.Essentials.ShareFile.#ctor(System.String,System.String)" />
<Member Id="M:Xamarin.Essentials.ShareFile.#ctor(Xamarin.Essentials.FileBase)" />
<Member Id="P:Xamarin.Essentials.ShareFile.AttachmentName" />
</Type>
<Type Name="Xamarin.Essentials.ShareFileRequest" Id="T:Xamarin.Essentials.ShareFileRequest">
<Member Id="M:Xamarin.Essentials.ShareFileRequest.#ctor" />

Просмотреть файл

@ -72,23 +72,5 @@
<remarks></remarks>
</Docs>
</Member>
<Member MemberName="AttachmentName">
<MemberSignature Language="C#" Value="public string AttachmentName { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance string AttachmentName" />
<MemberSignature Language="DocId" Value="P:Xamarin.Essentials.EmailAttachment.AttachmentName" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets the intended name of the file to be shared.</summary>
<value></value>
<remarks></remarks>
</Docs>
</Member>
</Members>
</Type>

Просмотреть файл

@ -0,0 +1,107 @@
<Type Name="ExperimentalFeatures" FullName="Xamarin.Essentials.ExperimentalFeatures">
<TypeSignature Language="C#" Value="public static class ExperimentalFeatures" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi abstract sealed beforefieldinit ExperimentalFeatures extends System.Object" />
<TypeSignature Language="DocId" Value="T:Xamarin.Essentials.ExperimentalFeatures" />
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Object</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<summary>Enables experimental features in Xamarin.Essentials</summary>
<remarks>
<para />
</remarks>
</Docs>
<Members>
<Member MemberName="EmailAttachments">
<MemberSignature Language="C#" Value="public const string EmailAttachments;" />
<MemberSignature Language="ILAsm" Value=".field public static literal string EmailAttachments" />
<MemberSignature Language="DocId" Value="F:Xamarin.Essentials.ExperimentalFeatures.EmailAttachments" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Docs>
<summary>Experimental feature for email attachments.</summary>
<remarks>
<para />
</remarks>
</Docs>
</Member>
<Member MemberName="Enable">
<MemberSignature Language="C#" Value="public static void Enable (params string[] featureNames);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig void Enable(string[] featureNames) cil managed" />
<MemberSignature Language="DocId" Value="M:Xamarin.Essentials.ExperimentalFeatures.Enable(System.String[])" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Void</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="featureNames" Type="System.String[]">
<Attributes>
<Attribute FrameworkAlternate="xamarin-essentials">
<AttributeName>System.ParamArray</AttributeName>
</Attribute>
</Attributes>
</Parameter>
</Parameters>
<Docs>
<param name="featureNames">List of features to enable.</param>
<summary>Enable experimental features for Xamarin.Essentials.</summary>
<remarks>
<para />
</remarks>
</Docs>
</Member>
<Member MemberName="OpenFileRequest">
<MemberSignature Language="C#" Value="public const string OpenFileRequest;" />
<MemberSignature Language="ILAsm" Value=".field public static literal string OpenFileRequest" />
<MemberSignature Language="DocId" Value="F:Xamarin.Essentials.ExperimentalFeatures.OpenFileRequest" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Docs>
<summary>Experimental feature for requesting a file to be opened.</summary>
<remarks>
<para></para>
</remarks>
</Docs>
</Member>
<Member MemberName="ShareFileRequest">
<MemberSignature Language="C#" Value="public const string ShareFileRequest;" />
<MemberSignature Language="ILAsm" Value=".field public static literal string ShareFileRequest" />
<MemberSignature Language="DocId" Value="F:Xamarin.Essentials.ExperimentalFeatures.ShareFileRequest" />
<MemberType>Field</MemberType>
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Docs>
<summary>Experimental feature for share a file with other applications.</summary>
<remarks>
<para />
</remarks>
</Docs>
</Member>
</Members>
</Type>

Просмотреть файл

@ -12,7 +12,9 @@
<Interfaces />
<Docs>
<summary>A representation of a file and its content type.</summary>
<remarks></remarks>
<remarks>
<para />
</remarks>
</Docs>
<Members>
<Member MemberName=".ctor">

Просмотреть файл

@ -77,7 +77,9 @@
<Docs>
<param name="uri">string uri scheme</param>
<summary>Launches the app specified by the uri scheme</summary>
<returns></returns>
<returns>
<para></para>
</returns>
<remarks>May throw System.UriFormatException if uri is malformed. Verify if the uri scheme is supported before calling this method</remarks>
</Docs>
</Member>
@ -99,9 +101,37 @@
<Docs>
<param name="uri">uri scheme</param>
<summary>Launches the app specified by the uri scheme</summary>
<returns></returns>
<returns>
<para></para>
</returns>
<remarks>May throw System.UriFormatException if uri is malformed. Verify if the uri scheme is supported before calling this method</remarks>
</Docs>
</Member>
<Member MemberName="OpenAsync">
<MemberSignature Language="C#" Value="public static System.Threading.Tasks.Task OpenAsync (Xamarin.Essentials.OpenFileRequest request);" />
<MemberSignature Language="ILAsm" Value=".method public static hidebysig class System.Threading.Tasks.Task OpenAsync(class Xamarin.Essentials.OpenFileRequest request) cil managed" />
<MemberSignature Language="DocId" Value="M:Xamarin.Essentials.Launcher.OpenAsync(Xamarin.Essentials.OpenFileRequest)" />
<MemberType>Method</MemberType>
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.Threading.Tasks.Task</ReturnType>
</ReturnValue>
<Parameters>
<Parameter Name="request" Type="Xamarin.Essentials.OpenFileRequest" />
</Parameters>
<Docs>
<param name="request">Request that contains information on the file to open.</param>
<summary>Requests to open a file in an application based on content type.</summary>
<returns>
<para></para>
</returns>
<remarks>
<para></para>
</remarks>
</Docs>
</Member>
</Members>
</Type>

Просмотреть файл

@ -0,0 +1,93 @@
<Type Name="LauncherFile" FullName="Xamarin.Essentials.LauncherFile">
<TypeSignature Language="C#" Value="public class LauncherFile : Xamarin.Essentials.FileBase" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit LauncherFile extends Xamarin.Essentials.FileBase" />
<TypeSignature Language="DocId" Value="T:Xamarin.Essentials.LauncherFile" />
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>Xamarin.Essentials.FileBase</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public LauncherFile (string fullPath);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(string fullPath) cil managed" />
<MemberSignature Language="DocId" Value="M:Xamarin.Essentials.LauncherFile.#ctor(System.String)" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="fullPath" Type="System.String" />
</Parameters>
<Docs>
<param name="fullPath">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public LauncherFile (Xamarin.Essentials.FileBase file);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class Xamarin.Essentials.FileBase file) cil managed" />
<MemberSignature Language="DocId" Value="M:Xamarin.Essentials.LauncherFile.#ctor(Xamarin.Essentials.FileBase)" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="file" Type="Xamarin.Essentials.FileBase" />
</Parameters>
<Docs>
<param name="file">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public LauncherFile (string fullPath, string contentType);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(string fullPath, string contentType) cil managed" />
<MemberSignature Language="DocId" Value="M:Xamarin.Essentials.LauncherFile.#ctor(System.String,System.String)" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="fullPath" Type="System.String" />
<Parameter Name="contentType" Type="System.String" />
</Parameters>
<Docs>
<param name="fullPath">To be added.</param>
<param name="contentType">To be added.</param>
<summary>To be added.</summary>
<remarks>To be added.</remarks>
</Docs>
</Member>
<Member MemberName="AttachmentName">
<MemberSignature Language="C#" Value="public string AttachmentName { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance string AttachmentName" />
<MemberSignature Language="DocId" Value="P:Xamarin.Essentials.LauncherFile.AttachmentName" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Docs>
<summary>To be added.</summary>
<value>To be added.</value>
<remarks>To be added.</remarks>
</Docs>
</Member>
</Members>
</Type>

Просмотреть файл

@ -12,7 +12,9 @@
<Interfaces />
<Docs>
<summary>Detect device's orentation relative to Earth's magnetic field in microteslas (µ).</summary>
<remarks></remarks>
<remarks>
<para></para>
</remarks>
</Docs>
<Members>
<Member MemberName="IsMonitoring">

Просмотреть файл

@ -13,7 +13,7 @@
<Docs>
<summary>Exception that occurs when executed from a reference assembly. This usually means that the NuGet was not installed into the app project.</summary>
<remarks>
<para />
<para></para>
</remarks>
</Docs>
<Members>

Просмотреть файл

@ -0,0 +1,126 @@
<Type Name="OpenFileRequest" FullName="Xamarin.Essentials.OpenFileRequest">
<TypeSignature Language="C#" Value="public class OpenFileRequest" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit OpenFileRequest extends System.Object" />
<TypeSignature Language="DocId" Value="T:Xamarin.Essentials.OpenFileRequest" />
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>System.Object</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<summary>Standard request for opening a file to another application.</summary>
<remarks>
<para></para>
</remarks>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public OpenFileRequest ();" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor() cil managed" />
<MemberSignature Language="DocId" Value="M:Xamarin.Essentials.OpenFileRequest.#ctor" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters />
<Docs>
<summary>Open request with an existing file.</summary>
<remarks>
<para />
</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public OpenFileRequest (string title, Xamarin.Essentials.FileBase file);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(string title, class Xamarin.Essentials.FileBase file) cil managed" />
<MemberSignature Language="DocId" Value="M:Xamarin.Essentials.OpenFileRequest.#ctor(System.String,Xamarin.Essentials.FileBase)" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="title" Type="System.String" />
<Parameter Name="file" Type="Xamarin.Essentials.FileBase" />
</Parameters>
<Docs>
<param name="title">Title to display on open dialog if available.</param>
<param name="file">File to open.</param>
<summary>Open request with an existing file.</summary>
<remarks>
<para />
</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public OpenFileRequest (string title, Xamarin.Essentials.ReadOnlyFile file);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(string title, class Xamarin.Essentials.ReadOnlyFile file) cil managed" />
<MemberSignature Language="DocId" Value="M:Xamarin.Essentials.OpenFileRequest.#ctor(System.String,Xamarin.Essentials.ReadOnlyFile)" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="title" Type="System.String" />
<Parameter Name="file" Type="Xamarin.Essentials.ReadOnlyFile" />
</Parameters>
<Docs>
<param name="title">Title to display on open dialog if available.</param>
<param name="file">File to open.</param>
<summary>Open request with an existing file.</summary>
<remarks>
<para />
</remarks>
</Docs>
</Member>
<Member MemberName="File">
<MemberSignature Language="C#" Value="public Xamarin.Essentials.ReadOnlyFile File { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance class Xamarin.Essentials.ReadOnlyFile File" />
<MemberSignature Language="DocId" Value="P:Xamarin.Essentials.OpenFileRequest.File" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>Xamarin.Essentials.ReadOnlyFile</ReturnType>
</ReturnValue>
<Docs>
<summary>File to open.</summary>
<value>
<para />
</value>
<remarks>
<para />
</remarks>
</Docs>
</Member>
<Member MemberName="Title">
<MemberSignature Language="C#" Value="public string Title { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance string Title" />
<MemberSignature Language="DocId" Value="P:Xamarin.Essentials.OpenFileRequest.Title" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Docs>
<summary>Title to display on open dialog if available.</summary>
<value>
<para />
</value>
<remarks>
<para />
</remarks>
</Docs>
</Member>
</Members>
</Type>

Просмотреть файл

@ -0,0 +1,83 @@
<Type Name="ReadOnlyFile" FullName="Xamarin.Essentials.ReadOnlyFile">
<TypeSignature Language="C#" Value="public class ReadOnlyFile : Xamarin.Essentials.FileBase" />
<TypeSignature Language="ILAsm" Value=".class public auto ansi beforefieldinit ReadOnlyFile extends Xamarin.Essentials.FileBase" />
<TypeSignature Language="DocId" Value="T:Xamarin.Essentials.ReadOnlyFile" />
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Base>
<BaseTypeName>Xamarin.Essentials.FileBase</BaseTypeName>
</Base>
<Interfaces />
<Docs>
<summary>A representation of a file and its content type.</summary>
<remarks>
<para></para>
</remarks>
</Docs>
<Members>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public ReadOnlyFile (string fullPath);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(string fullPath) cil managed" />
<MemberSignature Language="DocId" Value="M:Xamarin.Essentials.ReadOnlyFile.#ctor(System.String)" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="fullPath" Type="System.String" />
</Parameters>
<Docs>
<param name="fullPath">Full file path.</param>
<summary>Construct a file taking in file path.</summary>
<remarks>
<para></para>
</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public ReadOnlyFile (Xamarin.Essentials.FileBase file);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(class Xamarin.Essentials.FileBase file) cil managed" />
<MemberSignature Language="DocId" Value="M:Xamarin.Essentials.ReadOnlyFile.#ctor(Xamarin.Essentials.FileBase)" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="file" Type="Xamarin.Essentials.FileBase" />
</Parameters>
<Docs>
<param name="file">File to use for ReadOnlyFile</param>
<summary>Construct a file taking in file.</summary>
<remarks>
<para />
</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
<MemberSignature Language="C#" Value="public ReadOnlyFile (string fullPath, string contentType);" />
<MemberSignature Language="ILAsm" Value=".method public hidebysig specialname rtspecialname instance void .ctor(string fullPath, string contentType) cil managed" />
<MemberSignature Language="DocId" Value="M:Xamarin.Essentials.ReadOnlyFile.#ctor(System.String,System.String)" />
<MemberType>Constructor</MemberType>
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Parameters>
<Parameter Name="fullPath" Type="System.String" />
<Parameter Name="contentType" Type="System.String" />
</Parameters>
<Docs>
<param name="fullPath">Full file path.</param>
<param name="contentType">Content type of the file.</param>
<summary>Construct a file taking in file path and content type.</summary>
<remarks>
<para />
</remarks>
</Docs>
</Member>
</Members>
</Type>

Просмотреть файл

@ -12,7 +12,9 @@
<Interfaces />
<Docs>
<summary>A file to be shared.</summary>
<remarks></remarks>
<remarks>
<para />
</remarks>
</Docs>
<Members>
<Member MemberName=".ctor">
@ -71,23 +73,5 @@
<remarks></remarks>
</Docs>
</Member>
<Member MemberName="AttachmentName">
<MemberSignature Language="C#" Value="public string AttachmentName { get; set; }" />
<MemberSignature Language="ILAsm" Value=".property instance string AttachmentName" />
<MemberSignature Language="DocId" Value="P:Xamarin.Essentials.ShareFile.AttachmentName" />
<MemberType>Property</MemberType>
<AssemblyInfo>
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<ReturnValue>
<ReturnType>System.String</ReturnType>
</ReturnValue>
<Docs>
<summary>Gets or sets the intended name of the file to be shared.</summary>
<value></value>
<remarks>File name and extension of original file will be used by default.</remarks>
</Docs>
</Member>
</Members>
</Type>

Просмотреть файл

@ -12,7 +12,9 @@
<Interfaces />
<Docs>
<summary>Standard request for sharing a file to another application.</summary>
<remarks></remarks>
<remarks>
<para></para>
</remarks>
</Docs>
<Members>
<Member MemberName=".ctor">
@ -27,7 +29,9 @@
<Parameters />
<Docs>
<summary>Default constructor.</summary>
<remarks></remarks>
<remarks>
<para />
</remarks>
</Docs>
</Member>
<Member MemberName=".ctor">
@ -120,8 +124,12 @@
</ReturnValue>
<Docs>
<summary>Gets or sets the file to share.</summary>
<value></value>
<remarks></remarks>
<value>
<para />
</value>
<remarks>
<para />
</remarks>
</Docs>
</Member>
<Member MemberName="Title">
@ -138,8 +146,12 @@
</ReturnValue>
<Docs>
<summary>Gets or sets the title to use on the share user interface</summary>
<value></value>
<remarks></remarks>
<value>
<para />
</value>
<remarks>
<para />
</remarks>
</Docs>
</Member>
</Members>

Просмотреть файл

@ -67,6 +67,11 @@
<AssemblyName>Xamarin.Essentials</AssemblyName>
<AssemblyVersion>1.0.0.0</AssemblyVersion>
</AssemblyInfo>
<Attributes>
<Attribute>
<AttributeName>System.Diagnostics.DebuggerStepThrough</AttributeName>
</Attribute>
</Attributes>
<ReturnValue>
<ReturnType>System.Threading.Tasks.Task</ReturnType>
</ReturnValue>

Просмотреть файл

@ -130,6 +130,7 @@
<Type Name="EmailMessage" Kind="Class" />
<Type Name="EnergySaverStatus" Kind="Enumeration" />
<Type Name="EnergySaverStatusChangedEventArgs" Kind="Class" />
<Type Name="ExperimentalFeatures" Kind="Class" />
<Type Name="FeatureNotEnabledException" Kind="Class" />
<Type Name="FeatureNotSupportedException" Kind="Class" />
<Type Name="FileBase" Kind="Class" />
@ -157,6 +158,7 @@
<Type Name="NavigationMode" Kind="Enumeration" />
<Type Name="NetworkAccess" Kind="Enumeration" />
<Type Name="NotImplementedInReferenceAssemblyException" Kind="Class" />
<Type Name="OpenFileRequest" Kind="Class" />
<Type Name="OrientationSensor" Kind="Class" />
<Type Name="OrientationSensorChangedEventArgs" Kind="Class" />
<Type Name="OrientationSensorData" Kind="Structure" />
@ -167,6 +169,7 @@
<Type Name="Platform" Kind="Class" />
<Type Name="PointExtensions" Kind="Class" />
<Type Name="Preferences" Kind="Class" />
<Type Name="ReadOnlyFile" Kind="Class" />
<Type Name="RectangleExtensions" Kind="Class" />
<Type Name="SecureStorage" Kind="Class" />
<Type Name="SensorSpeed" Kind="Enumeration" />