我目前正在Android中开发一个应用程序,在我的应用程序中,用户可以浏览并选择一个.vtk文件。
我还安装了一个名为“KiwiViewer”的应用程序,它可以打开这些.vtk文件。当我手动浏览平板电脑,并使用文件管理应用程序单击.vtk文件时,KiwiViewer会毫无问题地打开这些.vtk文件。
我希望在我的应用程序中也出现同样的情况。我想让KiwiViewer打开用户选择的.vtk文件。我知道KiwiViewer的软件包(“com.kitware.KiwiViewe”),我能够有目的地打开应用程序。但是,我无法打开传递给应用程序的.vtk文件。
Intent i = new Intent(this.getPackageManager().getLaunchIntentForPackage("com.kitware.KiwiViewer"));
i.setData(Uri.parse(getIntent().getExtras().getString("ImageURI")));
startActivity(i);
我已经检查过了,发送的数据是有效的(它不是空的,而且它绝对是正确的文件。
我还尝试了以下方法,但也不起作用:
Intent i = new Intent();
i.setData(Uri.parse(getIntent().getExtras().getString("ImageURI")));
i.setPackage("com.kitware.KiwiViewer");
startActivity(i);
然而,我得到一个“找不到活动异常”
如何启动KiwiViewer以打开我提供的数据?
编辑:
当我查看提供给KiwiViewer的URI路径时,它似乎是/document/primary:ExperimentData/MHDImage.vtk。KiwiViewer说这不存在。实际上,路径是/sdcard/ExperimentData/MHDImage.vtk。这两者有什么不同的原因吗?