我下载图像,将其复制到公共文件夹并尝试使用图像意图打开它。
但是当我启动意图时,我的应用程序试图打开另一个窗口,该窗口立即关闭并返回到应用程序。
为什么会这样?
public Intent CopyToPublic(string privatePath)
{
string extBasePath = global::Android.OS.Environment.ExternalStorageDirectory.Path;
string upperFolder = "MyApp";
var bytes = System.IO.File.ReadAllBytes (privatePath);
Java.IO.File f = new Java.IO.File (extBasePath + "/" + upperFolder);
if (!f.Exists()) f.Mkdir ();
var extPath = String.Format ("{0}/{1}/{2}", extBasePath, upperFolder, "cache.jpg");
System.IO.File.WriteAllBytes (extPath, bytes);
global::Android.Net.Uri uri = global::Android.Net.Uri.Parse (extPath);
Intent intent = new Intent (Intent.ActionView);
intent.SetDataAndType (uri, "image/*");
return intent;
}
//Open
StartActivity (FilePublisher.Static.CopyToPublic(path));
这种情况下的extPath
是/storage/emulated/0/Miraclix/cache.jpg
,当我使用文件浏览器检查时,它就存在。