簡體   English   中英

如何從 xmarine android c# App 中的 Internal Storage Custom 文件夾顯示 pdf?

[英]how to show pdf from Internal Storage Custom folder in xmarine android c# App?

我想在我的應用程序中下載(從內部存儲自定義文件夾)后顯示 pdf 文件。 我希望用戶可以選擇他們喜歡的應用程序來打開它。 我使用了下面提到的代碼,但它不起作用。 我怎樣才能做到這一點? 在此處輸入圖片說明

string fileName = "qdummy.pdf";
Android.Net.Uri uri = Android.Net.Uri.Parse("file:///storage/emulated/0/TESTFOLDER/" + fileName);
Intent intent = new Intent(Intent.ActionView);
intent.SetDataAndType(uri, "application/pdf");
intent.SetFlags(ActivityFlags.ClearWhenTaskReset | ActivityFlags.NewTask);

try
{
    Application.Context.StartActivity(intent);
}
catch (Exception)
{
    Toast.MakeText(Application.Context, "No hay aplicacion instalada para ver PDF", ToastLength.Long).Show();
} 

問題解決,

try
                    {
                        string extension = MimeTypeMap.GetFileExtensionFromUrl(Android.Net.Uri.FromFile(file).ToString());
                        string mimeType = MimeTypeMap.Singleton.GetMimeTypeFromExtension(extension);
                        Intent intent = new Intent(Intent.ActionView);
                        intent.SetFlags(ActivityFlags.ClearTop | ActivityFlags.NewTask);
                        Android.Net.Uri path = FileProvider.GetUriForFile(Application.Context, Android.App.Application.Context.PackageName + ".provider", file);
                        intent.SetDataAndType(path, mimeType);
                        intent.AddFlags(ActivityFlags.GrantReadUriPermission);
                        Application.Context.StartActivity(Intent.CreateChooser(intent, "Choose App"));
                    }
                    catch (Exception ex)
                    {
                        Toast.MakeText(Application.Context, "problem", ToastLength.Long).Show();
                    }

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM