详解App Inventor 2 中的文件作用域(作用范围):App、程序包、缓存、兼容、私有、共享

本文内容来自中文网文档"文件管理器"组件部分,详细介绍了每一种文件作用域的特点及用法。

下面是每种作用域类型的简述:

  • App [推荐] :Android 2.2及更高版本上文件将从应用程序特定存储中读取和写入,在 Android 早期版本上,文件将写入兼容存储中。

    • App的根目录为:/storage/emulated/0/Android/data。读写文件在指定的 files 目录下,如图:

      (这是AI伴侣的App目录,如果最终编译apk运行,则到 appinventor.ai_admin.[project_name] 目录下查看文件)

    • 写入文件的参考代码如下:

    • 生成的文件如下:

  • 程序包 :从应用程序包中读取文件,应用程序包属于只读存储,不可写入。

  • 缓存 :文件将从应用程序的缓存目录读取和写入,可以在缓存中重新创建临时文件,也允许用户清理临时文件以重新获得存储空间。

  • 兼容 :文件将使用 App Inventor 在nb187版本之前的规则从文件系统读取和写入,也就是说,将从中读取以单个/开头的文件名写入外部存储目录的根目录,例如 /sdcard/。 兼容功能将无法在 Android 11 或更高版本上运行中文网注:我们与MIT官方最新版本一样,出于安全性考虑,不支持直接从根目录访问文件,如/sdcard/,推荐使用App模式。

  • 私有 :文件将从应用程序的私有目录读取和写入,使用这个作用域存储的数据对其他App不可见。 与App模式类似,读写文件的目录在 filesdata子目录 下:

  • 共享 :文件将从设备的共享媒体目录中读取和写入,例如图片目录。

  1. 注1:在 兼容 模式下,文件名可以采用以下三种形式之一:
    • 私有文件:没有前导 / ,写入应用程序私有存储(例如,file.txt
    • 外部文件:有一个前导的/,写入公共存储(例如,/file.txt
    • 应用程序包:有两个前导的 //只能读取 (例如,//file.txt
  2. 注2:在所有作用域内,以两个斜杠 (//) 开头的文件名是程序包中的文件,只读,不可写

原文:数据存储组件 · App Inventor 2 中文网

相关推荐
吳所畏惧1 小时前
宝塔面板Redis密码修改指南:SSH命令修改 vs 面板UI界面修改,哪个更靠谱?
运维·服务器·数据库·redis·缓存·ssh
Y3815326626 小时前
SERP API + Redis 缓存层:4 种方案对比与选型
数据库·redis·缓存
海兰8 小时前
【高速缓存】RedisVL 高级查询(全文搜索、混合搜索和 多向量搜索)
数据库·人工智能·redis·缓存
流星白龙1 天前
【Redis】4.基本全局命令
数据库·redis·缓存
流星白龙1 天前
【Redis】3.Redis安装与命令行客户端
数据库·redis·缓存
我不想名字重复1 天前
redis缓存和数据库数据保持一致
数据库·redis·缓存
时空无限1 天前
vllm 大模型启动缓存相关环境变量 export
linux·缓存·vllm
流星白龙1 天前
【Redis】6.计数其他命令
数据库·redis·缓存
正儿八经的少年1 天前
redis 的大 key 和热 key 详解
数据库·redis·缓存
X-⃢_⃢-X1 天前
十、Redis之布隆过滤器
数据库·redis·缓存