我有一个 xamarin android 应用程序,我想打开一个 pdf 文件。在代码的最后一行之后,我得到了错误
Android.Content.ActivityNotFoundException:没有找到处理意图的活动{ act=android.intent.action.VIEW dat=/storage/emulated/0/docen__.pdf typ=application/pdf flg=0x80000 } Stream _IS = this.Assets.Open("doc" + GlobalsAndroid.FixedDocumentationLanguageCode + ".pdf"); byte[] _BA = null; using (BinaryReader _BR = new BinaryReader(_IS)) { using (MemoryStream ms = new MemoryStream()) { byte[] _buffer = new byte[4096]; int count; while ((count = _BR.Read(_buffer, 0, _buffer.Length)) != 0) ms.Write(_buffer, 0, count); _BA = ms.ToArray(); } } string _EP = System.IO.Path.Combine(global::Android.OS.Environment.ExternalStorageDirectory.Path, "doc" + GlobalsAndroid.FixedDocumentationLanguageCode + "__.pdf"); System.IO.File.WriteAllBytes(_EP, _BA); Intent _I = new Intent(Intent.ActionView); _I.SetDataAndType(global::Android.Net.Uri.Parse(_EP), "application/pdf"); _I.SetFlags(ActivityFlags.GrantReadUriPermission); _I.SetFlags(ActivityFlags.NewTask); _I.SetFlags(ActivityFlags.ClearWhenTaskReset); this.StartActivity(_I);
我的清单是:
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="http://schemas.android.com/apk/res/android" android:versionCode="6" android:versionName="1.3" android:installLocation="auto"> <uses-sdk android:minSdkVersion="17" android:targetSdkVersion="20" /> <application android:debuggable="true"></application> <uses-permission android:name="android.permission.INTERNET" /> <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" /> <uses-permission android:name="android.permission.READ_INTERNAL_STORAGE" /> <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" /> <uses-permission android:name="android.intent.action.VIEW" /> </manifest>
我该如何解决?