首页 > 解决方案 > 如何从图库中隐藏 FilePicker 图像?以及如何将这些图像存储在外部存储中的文件夹中?

问题描述

我正在使用 FilePicker 获取客户文档。打开 FilePicker 后,它会显示从图库和相机中获取图像的选项。

拍摄图像后,图像在画廊内可见,但我不希望图像在画廊内可见。而且我知道已经有关于从画廊而不是从 FilePicker 隐藏图像的问题。

我应该怎么办 ?我认为将图像保存在内部/外部存储中的文件夹 Android/App/data 中就可以了。但是如何获取文件夹位置并将图像保存在那里。? 或任何其他可以提供帮助的解决方案?

这是 onClick() 方法中的代码。

if (view == pickPhotoBtn) {
        FilePickerBuilder.getInstance().setMaxCount(10)
                .setActivityTheme(R.style.AppTheme3)
                .pickPhoto(getActivity());
  }

这是 onActivityResult() 方法。

 @Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
    super.onActivityResult(requestCode, resultCode, data);
    switch (requestCode) {

        case FilePickerConst.REQUEST_CODE_PHOTO:

            if (resultCode == Activity.RESULT_OK && data != null) {
                Log.e(TAG, "onActivityResult: ");
                for (String path : data.getStringArrayListExtra(FilePickerConst.KEY_SELECTED_PHOTOS)) {
                    String fileName = CommonMethod.getFileNameFromPath(path);

                    if (!documentNameList.contains(fileName) && !selectPhotosPath.contains(path) && selectPhotosPath.size() < 10) {
                        selectPhotosPath.add(path);
                        File file = new File(path);
                        Log.e(TAG, "Image Name: " + fileName);
                        documentNameList.add(fileName);
                        documentIdList.add(0);
                        selectPhotosBitmap.add(CommonMethod.compressImage(file, getContext()));
                    }
                }

                adapter.addItems(selectPhotosBitmap);
                adapter.notifyDataSetChanged();
                Log.e(TAG, "Number Of Files: " + selectPhotosPath.size());
            }

    }
}

标签: androidfilepicker

解决方案


您可以将图像保存在应用程序内部存储中,默认情况下,没有人可以访问您的应用程序内部存储,因为它对其他人是私有的。您可以查看以下链接如何从内部存储中存储和检索图像

在 Android 中从内存中保存和读取位图/图像


推荐阅读