Python:Android 上的权限被拒绝问题

ruslol228

我只是想将.mp3网站上的/storage/emulated/0/Download文件保存在 Android上的文件夹中,但我总是得到Errno 13 Permission denied.

这是示例代码:

import requests

# full path to mp3 file in website example
target_link = 'https://www.yt-download.org/download/IFtwhMK64H8/mp3/128/1630338605/f2803874069bf196561631cea2b1b11c2b1d2f9555e2baf751eb28b46d484bb5/0.mp3'

r = requests.get(target_link)

# downloading it into download folder on Android
with open('/storage/emulated/0/Download/file.mp3', 'wb') as f:
    f.write(r.content)

更新:忘了说我使用 Kivy 作为 GUI 框架。

格雷戈里奥·帕拉马

您肯定需要 WRITE_EXTERNAL_STORAGE 权限。在最新的 Android 版本上,必须明确请求该权限。然后你必须使用这样的东西:

from android.permissions import Permission, request_permissions, check_permission

def check_permissions(perms):
    for perm in perms:
        if check_permission(perm) != True:
            return False
    return True

perms = [Permission.WRITE_EXTERNAL_STORAGE, Permission.READ_EXTERNAL_STORAGE]
    
if  check_permissions(perms)!= True:
    request_permissions(perms)

这将确保您拥有所有必需的权限,并且用户明确授予它们。请注意,您必须每次都检查它们,因为用户可以在应用程序之外撤销它们。

其余代码看起来没问题,即使我最好使用 primary_external_storage_path(),而不是提供绝对路径。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

Android上的“打开失败:EACCES(权限被拒绝)”

拒绝在Android M上获取权限

日历提供程序:Android 8上的权限拒绝

Android Studio模拟器上的kvm权限被拒绝

Android上的异常“打开失败:EACCES(权限被拒绝)”

试图在Windows 10上运行Python的“权限被拒绝”

权限被拒绝在Mint 17.3上启动python脚本

在AWS Lambda上从nodejs调用python-权限被拒绝

Android Runtime权限(权限被拒绝)

EACCES(权限被拒绝)Android

android dumpsys权限拒绝

在ubuntu上启动android SDK管理器时,即使具有root权限,权限也被拒绝

Python Pydub权限被拒绝?

为什么在 Android 上的端口 25 上打开套接字会导致权限被拒绝错误

Python pytesseract问题在Mac中打开“ [Errno 13]权限被拒绝:”

在Android上从图库中选择图像时出现权限问题

由于 RECEIVE_SMS 权限被拒绝,Cordova Android 应用程序在 Android P 上崩溃

要求多个权限时,Android权限被拒绝

Android-ServerSocket权限被拒绝

android studio中的权限拒绝

Android Firebase setValue()权限被拒绝

Android 中的 Firestore 权限被拒绝

在10.0.0.2(同一台机器)上,Android(仿真器)套接字权限被拒绝

在Android上发送电子邮件的“ java.lang.SecurityException:权限拒绝:启动意图”

Android Lollipop上的IntelliJ SQLite权限被拒绝,之前曾工作过

Mac OS上的Android Studio IDE os:error = 13,权限被拒绝

在 Android 上读取文本文件时出错,打开失败:EACCES(权限被拒绝)

访问设备上的android应用程序数据库(权限被拒绝)

Errno 13权限被拒绝Python