问题标签 [android-storage]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 为什么Android允许未经许可读取文件?
在我的应用程序中,我编写了以下代码来访问文件:
在onActivityResult
我收到Uri
所选图像时。
为什么我可以在Uri
没有READ_EXTERNAL_STORAGE
权限的情况下访问?
minSdk = 19
compileSdk = 27
targetSdk = 27
测试安卓版本:
Android 4.4.2 API 19
Android 6.0.1 API 23
android - 如何通过MediaStore从getExternalFilesDir路径中查询所有图片
我正在按照 Google 官方文档编写相机和图库应用程序。问题在于它主要关注如何拍照以及如何将其保存在内存中。我通过 getExternalFilesDir() 将它们保存在应用程序外部存储器中。
我现在要做的是通过 MediaStore 简单地查询保存拍摄照片的目录,以便在回收站视图中显示其中的所有图片。但我似乎无法在任何地方找到有关如何进行检索的解释。Uri 出了点问题,我可能不太了解,也不知道怎么解决。即使在这里https://developer.android.com/training/data-storage/files#PrivateFiles文章也只讨论了在各种存储选项中保存文件,而不是检索它们。
这是我如何保存文件的代码:
这是实际发送意图的函数(然后 onActivityResult 处理返回的数据):
这是我试图获取有关所拍摄照片的信息的代码:
看起来尝试将 getExternalFileDir() 的路径转换为 Uri 不起作用。光标为空。但是 MediaStore 只有 MediaStore.Images.Media.EXTERNAL_CONTENT_URI 并且不适合查询整个设备内存,而我只需要我的应用程序保存拍摄的图片的特定目录。我错过了什么?不可能那么难吧?
android - Lollipop vs Nougat Runtime 目录权限到外部存储文件夹
我的代码在 Lollipop 设备中运行良好,但在 Nougat 中没有执行任何操作
这个块在棒棒糖中运行良好,但在牛轧糖中没有,请帮助我进行真正的更改或添加。
android - 无法在 Android P 中写入文件
我无法在 Android P 存储卡中写入文件。相同的代码在 Android O 中运行良好。
我可以从同一设备(存储卡)读取文件,但是当我尝试写入文件时,它会抛出Permission Denied异常。
最初它向我抛出No such file or Directory,但在授予 root 权限后,它抛出 Permission Deniod 异常。
注意:我的应用程序是系统特权应用程序,并且我已通过 adb root 授予 Devicewith root 权限,检查了 Android Manifest 文件中的权限,它们看起来很好。
android - 如何在内部存储中为其他使用 android 的应用程序公开共享文件?
我想在我的内部存储中创建一个 CSV 文件,其他应用程序可以访问该文件。我使用的代码是
上面创建到类中的变量
上面的代码用于在文件不存在时创建文件。当我使用而不是上面的代码时,这段代码对我有用。
但我需要使用 Gmail 应用程序将此文件作为电子邮件附件发送,因此我无法访问该文件,因为上面的行将在私有应用程序文件夹中创建一个文件,外部应用程序无法访问。
android - 如何使用 webview 从资产中保存文件
我正在使用 webview 制作 android 应用程序。我的页面一切正常,但我希望用户可以从页面保存一些资产文件。我尝试为我的应用程序提供一些许可:
我的 MainActivity.java 有这个代码:
the file don't exist
所以,我在资产希望指向我希望用户下载的文件的 html 文件中有一个链接,但是网络总是显示错误,例如
android - 为什么我看不到 /storage 的内容
如果我们使用 Android API 来获取外部存储目录,我们会得到类似/storage/emulated/0
. 如果我在同一文件上运行递归遍历,我会得到列出的所有文件和文件夹的列表。
所以,我想到了运行遍历,/storage
认为它会返回所有存在的公共目录。但是,在运行相同的程序时,我会在其中得到一个空文件列表。为了列出文件/文件夹,我使用了 API:File.listFiles()
为什么会发生这种情况?如何获取 Android 上所有存储上所有可公开访问的文件/文件夹的列表?
android - 如何知道在哪里寻找 android 手机上的媒体目录?
我正在开发一个画廊应用程序,该应用程序需要知道在用户的 android 设备中查找图像/视频的位置。目前,我通过一直到根目录来强制它,专门寻找以“storage”和“sdcard”开头的目录,并在每个子文件夹中搜索包含正确扩展名的文件。
必须有更好的方法在 Android 文件系统中查找媒体目录,不是吗?任何人都可以提出任何替代方案吗?
谢谢!
android - 使用 Android 意图打开 PDF 文件
所以这是场景:
我正在从网络下载 PDF 并将其保存在/0/Download/NSIT - Notices/"fileName".pdf
现在像这样发送 Intent:
现在任何 PDF 阅读器(Google Drive PDF Reader、System PDF Viewer)都在说
谷歌坐着什么都不做(这就是为什么不包括它的图像)
我在 AsyncTask 中创建文件,但从该 AsyncTask 的 postExecute 打开
日志猫
以前它是扔的,然后我用这个东西FileUriExposedException
修复了。FileProvider
问题是我的应用程序下载的 pdf 文件已成功创建,我可以从任何文件管理器(现在是 ES 文件资源管理器)成功打开它,但不能从我的应用程序 :(。我是新手FileProvider
。需要帮助!
PS:这也不是我的设备问题。用另外两部具有不同 ROM 和 API >= 23 的手机进行了测试
android - 从内存中打开 PNG 文件并通过 TCP 套接字发送
我希望将图像从我的 android 设备发送到运行 python 的计算机/树莓派。我已经使用以下代码从我的 Windows 笔记本电脑(运行 java 客户端)实现了通信。
但是,Android 不支持 BufferedImage 库 (java.awt.image)。如何在 android studio 中实现类似的功能以在我的 android 设备上运行,即将我设备内存中的 PNG 文件读取到字节缓冲区中,然后将其发送到服务器 PC。
注意:我的文件的位置类似于以下/storage/emulated/0/Downloads/frog-face_1f438.png