安卓手机-获取最新拍摄的照片

4

我希望在我的应用中向用户展示他最新拍摄的照片或截图。

                    String[] projection = new String[]{
                        MediaStore.Images.ImageColumns._ID,
                        MediaStore.Images.ImageColumns.DATA,
                        MediaStore.Images.ImageColumns.BUCKET_DISPLAY_NAME,
                        MediaStore.Images.ImageColumns.DATE_TAKEN,
                        MediaStore.Images.ImageColumns.MIME_TYPE
                };
                final Cursor cursor = getActivity().getContentResolver()
                        .query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, projection, null,
                                null, MediaStore.Images.ImageColumns.DATE_TAKEN + " DESC");

为了在手机上获取最新的照片,我使用Cursor
我如何检查图片/截屏是否是在这部手机上拍摄的?
我不想显示无关的WhatsApp照片(或其他应用程序),只想显示相机胶卷和截屏的照片。
1个回答

4

我认为这篇文章https://dev59.com/EG855IYBdhLWcg3wMBTV#4495753可以帮助你找到答案。

它使用了content resolver来访问Images.Media.EXTERNAL_CONTENT_URI,并通过从媒体桶名称"/DCIM/Camera"获取Media.BUCKET_ID来过滤结果。希望这可以帮到你。


并非所有的安卓设备都有相同的BUCKET_ID或者目录来保存照片。遗憾的是,我还不知道如何获取所有相机应用的BUCKET_NAME。 - user2576168

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接