我试图在默认应用中打开本地文件。
Intent intent = new Intent(Intent.ActionView);
var file = new File("content://" + path);
var uri = FileProvider.GetUriForFile(Application.Context, BuildConfig.ApplicationId + ".provider", file);
intent.SetDataAndType(uri, GetMimeType(path));
intent.SetFlags(ActivityFlags.ClearWhenTaskReset | ActivityFlags.NewTask);
intent.AddFlags(ActivityFlags.GrantReadUriPermission);
Application.Context.StartActivity(intent);
当它呼叫FileProvider.GetUriForFile
时崩溃。我发现我应该将提供者添加到androidmanifest.xml
:
<provider android:name="android.support.v4.content.FileProvider"
android:authorities="PACKAGENAME.fileprovider"
android:exported="false"
android:grantUriPermissions="true">
<meta-data android:name="android.support.FILE_PROVIDER_PATHS"
android:resource="@xml/file_paths"></meta-data>
</provider>
但我无法在androidmanifest.xml
android项目中找到Xamarin.Forms
。如何在Xamarin.Forms
中打开此文件?
答案 0 :(得分:0)
您可以在属性下的.Android项目中找到androidmanifest.xml
文件。