我实现了一个文件 ContentProvider 以通过 http url 访问 wifi 网络上的文件服务器。
我要做的是启动具有特定意图和 uri 的 Android Gallery 应用程序,以显示文件服务器上特定目录中的图像文件。
如果我使用单个 uri 启动 Gallery 应用程序以通过以下代码显示一个图像,我就能成功:
Intent lance = new Intent();
lance.setAction(Intent.ACTION_VIEW);
String typedata = "image/*";
lance.setType(typedata);
String phuri = "content://" + URI_AUTORITE
+ "/" + URI_CONTENU_FICHIERS
+ directory + filename;
Uri uri = Uri.parse(phuri);
lance.setDataAndType(uri, "image/*");
startActivity(lance);
但我试图更进一步来实现包含图像的目录的显示。我尝试通过以下代码使用 ClipData 对象显示多个图像:
Intent lance = new Intent();
lance.setAction(Intent.ACTION_VIEW);
String typedata = "image/*";
lance.setType(typedata);
String phuri = "content://" + URI_AUTORITE
+ "/" + URI_CONTENU_FICHIERS
+ directory + filename;
Uri uri = Uri.parse(phuri);
ClipData ensemble = ClipData.newRawUri("Photos", uri);
lance.setClipData(ensemble);
startActivity(lance);
它不起作用:Gallery 应用程序已启动并显示专辑列表,并且不调用我的 File ContentProvider。
我错过了什么,还是画廊应用程序开发人员有问题?