gpt4 book ai didi

Android cooliris gallery 开发者文档

转载 作者:搜寻专家 更新时间:2023-11-01 09:18:48 27 4
gpt4 key购买 nike

有谁知道如何与新的 Gallery3D 应用程序(cooliris android gallery)集成?我想启动该应用程序,以便它仅显示特定文件夹的缩略图。

例如,假设我的应用程序从我的服务器下载图像并将它们存储在 SD 卡上的文件夹中 (/sdcard/myapp/image-cache/someid/*)。我希望能够执行以下操作:

// within an activity
Uri uri = Uri.withAppendedPath(Media.EXTERNAL_CONTENT_URI, "myapp/image-cache/someid");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);

谢谢。

最佳答案

有人告诉我你需要像这样启动它:

Uri targetUri = Media.EXTERNAL_CONTENT_URI;
String folderPath = Environment.getExternalStorageDirectory().toString() + "/" + "testFolder";
int folderBucketId = folderPath.toLowerCase().hashCode();
targetUri = targetUri.buildUpon().appendQueryParameter("bucketId", folderBucketId).build();

Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);

更多信息:

确保您有正确的路径(检查尾部斜杠等)。作为测试,您可以检查从您的方法中得出的存储桶 ID 是否等于数据库中的存储桶 ID(您可以使用 MediaProvider 类查询)。

您现在正在做的是传递该存储桶中的第一张图像,图库会自动显示 View 中的其他图像,但不同之处在于您正在尝试查看图像,而不是存储桶,这就是它不显示的原因t 显示在缩略图 View 中。

就您的 MediaScanner 问题而言,connect() 是一个异步调用,因此您应该在实现 MediaScannerConnectionClient 接口(interface)时在 onMediaScannerConnected 方法中执行所有操作。您已经为 onScanCompleted 实现了这个接口(interface),所以您只需要将逻辑放在那里而不是轮询 MediaScannerService 以查看它是否已连接。

关于Android cooliris gallery 开发者文档,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2238760/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com