gpt4 book ai didi

android - Kivy - 在任何安卓设备上获取 DCIM 文件夹的路径

转载 作者:搜寻专家 更新时间:2023-11-01 07:46:48 25 4
gpt4 key购买 nike

我想知道如何仅使用 Kivy 获取 Android 上 DCIM 文件夹的路径。

PyJinus 不是一个选项,因为它目前不适用于 Python 3.5

到目前为止我尝试的是:

DATA_FOLDER = os.getenv('EXTERNAL_STORAGE') if platform is 'android' else os.path.expanduser("~")

但这只会给我用户区。有什么想法吗?

最佳答案

使用user_data_dir如果你打算使用 sdcard 作为你的应用程序的存储(使用 user_data_dir 变量创建一个文件夹),然后上去:

from kivy.app import user_data_dir
from os.path import dirname, join
join(dirname(user_data_dir), 'DCIM')

或者只使用它的 code直接:

DCIM = join('/sdcard', 'DCIM')

我认为 /sdcard 只是指向真实文件夹(无论它在哪里)的符号链接(symbolic link),因此使用此路径只会在访问时获取值,例如到 /storage/sdcard0(符号链接(symbolic link))或者直接到真实路径。


除了那些解决方案,android 具有您在以下环境中注意到的路径:

  • EXTERNAL_STORAGE (/storage/emulated/legacy) 再次符号链接(symbolic link)到 sdcard
  • SECONDARY_STORAGE (/storage/extSdCard) 即用于外部卡,如果您将照片存储在那里
  • EMULATED_STORAGE_TARGET (/storage/emulated) 基本上是你的 sdcard 的父文件夹,真正的 sdcard(对我来说)在 /storage/extSdCard/emulated/0

关于android - Kivy - 在任何安卓设备上获取 DCIM 文件夹的路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42466607/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com