diff --git a/AideDeJeu/AideDeJeu.Android/AideDeJeu.Android.csproj b/AideDeJeu/AideDeJeu.Android/AideDeJeu.Android.csproj
index b370fa95..de8ef7bd 100644
--- a/AideDeJeu/AideDeJeu.Android/AideDeJeu.Android.csproj
+++ b/AideDeJeu/AideDeJeu.Android/AideDeJeu.Android.csproj
@@ -426,5 +426,8 @@
+
+
+
\ No newline at end of file
diff --git a/AideDeJeu/AideDeJeu.Android/NativeAPI.cs b/AideDeJeu/AideDeJeu.Android/NativeAPI.cs
index 7186c5bf..f105b66e 100644
--- a/AideDeJeu/AideDeJeu.Android/NativeAPI.cs
+++ b/AideDeJeu/AideDeJeu.Android/NativeAPI.cs
@@ -195,5 +195,30 @@ namespace AideDeJeu.Droid
// return Task.CompletedTask;
//}
+ public async Task LaunchFileAsync(string title, string message, string filePath)
+ {
+ var context = Android.App.Application.Context;
+ var uri = Android.Support.V4.Content.FileProvider.GetUriForFile(context, context.PackageName + ".fileprovider", new Java.IO.File(filePath));
+ //var uri = Android.Net.Uri.Parse("file://" + filePath);
+ var contentType = "application/pdf";
+ var intent = new Intent(Intent.ActionView);
+ /*intent.PutExtra(Intent.ExtraStream, uri);
+ intent.PutExtra(Intent.ExtraText, string.Empty);
+ intent.PutExtra(Intent.ExtraSubject, message ?? string.Empty);
+ intent.SetType(contentType);
+ var chooserIntent = Intent.CreateChooser(intent, title ?? string.Empty);
+ //chooserIntent.SetDataAndType(uri, "application/pdf");
+ chooserIntent.SetFlags(ActivityFlags.ClearTop);
+ chooserIntent.SetFlags(ActivityFlags.NewTask);
+ chooserIntent.AddFlags(ActivityFlags.GrantReadUriPermission);
+ chooserIntent.AddFlags(ActivityFlags.GrantWriteUriPermission);
+ context.StartActivity(chooserIntent);
+ */
+ intent.SetDataAndType(uri, "application/pdf");
+ intent.SetFlags(ActivityFlags.NewTask | ActivityFlags.GrantReadUriPermission);
+ context.StartActivity(intent);
+ //return Task.FromResult(true);
+ }
+
}
}
diff --git a/AideDeJeu/AideDeJeu.Android/Properties/AndroidManifest.xml b/AideDeJeu/AideDeJeu.Android/Properties/AndroidManifest.xml
index 7df1ae61..f4301095 100644
--- a/AideDeJeu/AideDeJeu.Android/Properties/AndroidManifest.xml
+++ b/AideDeJeu/AideDeJeu.Android/Properties/AndroidManifest.xml
@@ -1,5 +1,12 @@
-
+
+
+
+
+
\ No newline at end of file
diff --git a/AideDeJeu/AideDeJeu.Android/Resources/Resource.designer.cs b/AideDeJeu/AideDeJeu.Android/Resources/Resource.designer.cs
index c2885c03..64a6225e 100644
--- a/AideDeJeu/AideDeJeu.Android/Resources/Resource.designer.cs
+++ b/AideDeJeu/AideDeJeu.Android/Resources/Resource.designer.cs
@@ -12163,7 +12163,10 @@ namespace AideDeJeu.Droid
{
// aapt resource value: 0x7f070000
- public const int xamarin_essentials_fileprovider_file_paths = 2131165184;
+ public const int file_paths = 2131165184;
+
+ // aapt resource value: 0x7f070001
+ public const int xamarin_essentials_fileprovider_file_paths = 2131165185;
static Xml()
{
diff --git a/AideDeJeu/AideDeJeu.Android/Resources/xml/file_paths.xml b/AideDeJeu/AideDeJeu.Android/Resources/xml/file_paths.xml
new file mode 100644
index 00000000..dba3cc6d
--- /dev/null
+++ b/AideDeJeu/AideDeJeu.Android/Resources/xml/file_paths.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/AideDeJeu/AideDeJeu/Tools/NativeAPI.cs b/AideDeJeu/AideDeJeu/Tools/NativeAPI.cs
index 76dc64d4..59118736 100644
--- a/AideDeJeu/AideDeJeu/Tools/NativeAPI.cs
+++ b/AideDeJeu/AideDeJeu/Tools/NativeAPI.cs
@@ -14,5 +14,6 @@ namespace AideDeJeu.Tools
Task SaveStreamAsync(string filename, Stream stream);
Stream CreateStream(string filename);
//void OpenFileByName(string fileName);
+ Task LaunchFileAsync(string title, string message, string filePath);
}
}
diff --git a/AideDeJeu/AideDeJeu/ViewModels/PlayerCharacter/PlayerCharacterEditorViewModel.cs b/AideDeJeu/AideDeJeu/ViewModels/PlayerCharacter/PlayerCharacterEditorViewModel.cs
index 14733c98..50e2ca9a 100644
--- a/AideDeJeu/AideDeJeu/ViewModels/PlayerCharacter/PlayerCharacterEditorViewModel.cs
+++ b/AideDeJeu/AideDeJeu/ViewModels/PlayerCharacter/PlayerCharacterEditorViewModel.cs
@@ -1260,6 +1260,8 @@ namespace AideDeJeu.ViewModels.PlayerCharacter
//var file = Path.Combine(FileSystem.CacheDirectory, fn);
//File.WriteAllText(file, "Hello World");
var testfile = Path.Combine(Xamarin.Essentials.FileSystem.CacheDirectory, "test.pdf");
+ await DependencyService.Get().LaunchFileAsync("hophop", "coucou", testfile);
+ /*
var shareFile = new Xamarin.Essentials.ShareFile(testfile);
//var truc = Platform.GetShareableFileUri(request.File.FullPath);
//await Xamarin.Essentials.Browser.OpenAsync(testfile);
@@ -1268,7 +1270,7 @@ namespace AideDeJeu.ViewModels.PlayerCharacter
Title = "ou yeah",
File = shareFile
});
-
+ */
}
private int PickAbility(Random random, ref List mins, ref List maxs, string name)