AndroidScopedStorage权限允许下载文件夹中下载PDF文件
创始人
2024-10-10 01:00:18
0

Android Q(API级别29)引入了Scoped Storage,这是一种新的外部存储空间沙箱模型。在此模型中,应用程序被限制在私有应用数据目录和共享媒体存储目录之间。应用程序不再能够自由地访问和修改与应用程序无关的外部存储文件。如果您想下载PDF文件并保存到设备上,您可能会遇到权限问题。

为了处理这个问题,您可以使用以下代码来请求存储和下载权限,并保存下载的PDF文件:

首先,您需要在AndroidManifest.xml文件中添加以下权限声明:

然后您可以通过这个方法来请求存储和下载权限:

private fun requestPermission() { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { val hasWritePermission = checkSelfPermission(Manifest.permission.WRITE_EXTERNAL_STORAGE) val hasReadPermission = checkSelfPermission(Manifest.permission.READ_EXTERNAL_STORAGE)

    val permissions = ArrayList()

    if (hasWritePermission != PackageManager.PERMISSION_GRANTED) {
        permissions.add(Manifest.permission.WRITE_EXTERNAL_STORAGE)
    }

    if (hasReadPermission != PackageManager.PERMISSION_GRANTED) {
        permissions.add(Manifest.permission.READ_EXTERNAL_STORAGE)
    }

    if (permissions.isNotEmpty()) {
        requestPermissions(permissions.toTypedArray(), PERMISSION_REQUEST_CODE)
    }
}

}

然后使用以下代码的方法来下载PDF文件:

val downloadManager = getSystemService(Context.DOWNLOAD_SERVICE) as DownloadManager val uri = Uri.parse("Your_pdf_file_url") val request = DownloadManager.Request(uri) request.setTitle("PDF File") request.setDescription("Downloading PDF...") request.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED) request.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "sample.pdf") downloadManager.enqueue(request)

这个代码请求了读取和写入存储器的权限,并使用Android Download Manager在沙箱范围内下载PDF文件并保存到设备上的下载目录中。

相关内容

热门资讯

黑科技代打(Wepoke代码)... 黑科技代打(Wepoke代码)wPk往昔存在有挂!太嚣张了起初真的有挂(2021已更新)(哔哩哔哩)...
黑科技好友房(Wepoke安装... 黑科技好友房(Wepoke安装)菠萝德州app起初是有挂!太夸张了都是真的是有挂(2021已更新)(...
黑科技计算(Wepoke辅助a... 黑科技计算(Wepoke辅助ai)传奇扑克往昔是有挂!太嚣张了一向真的是有挂(2020已更新)(哔哩...
黑科技辅助(微扑克脚本)nzt... 黑科技辅助(微扑克脚本)nzt德州确实有挂!太实锤了一向是真的有挂(2021已更新)(哔哩哔哩)1、...
黑科技攻略(wpk修改器)wP... WePoker透视辅助工具核心要点解析‌,黑科技攻略(wpk修改器)wPK切实真的有挂!太夸张了竟然...
黑科技教学(德州竞技联盟)鱼扑... 黑科技教学(德州竞技联盟)鱼扑克app俱乐部竟然是真的有挂!太夸张了原生存在有挂(2020已更新)(...
黑科技软件(扑克世界app)a... WePoker透视辅助版本稳定性对比与推荐‌:黑科技软件(扑克世界app)aapokER一贯真的是有...
黑科技代打(aapoker操作... 黑科技代打(aapoker操作)微扑克插件一贯是真的有挂!太无语了本然真的有挂(2024已更新)(哔...
黑科技有挂(德扑窥牌)德州we... 黑科技有挂(德扑窥牌)德州wepower原本有挂!太无语了从前是有挂(2025已更新)(哔哩哔哩);...
黑科技中牌率(Wepoke总结... 黑科技中牌率(Wepoke总结)轰趴十三水原本真的有挂!太无语了真是真的是有挂(2026已更新)(哔...