详解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 中文网

相关推荐
小七-七牛开发者9 天前
TokenPilot:让 LLM Agent 长会话成本降 60%+ 的上下文管理
缓存·agent·token·context·上下文·推理成本
ofoxcoding16 天前
在AI API聚合平台配置DeepSeek V3.2提示词缓存实战:快速接入与成本优化指南
人工智能·spring·缓存·ai
NeilYuen16 天前
gRPC结合FAISS构建AI助手语义缓存模块(一):设计
人工智能·缓存·faiss
taocarts_bidfans16 天前
反向海淘跨境缓存架构优化:taocarts Redis分层缓存实战技术
redis·缓存·架构·反向海淘·taocarts
退休倒计时16 天前
【每日一题】LeetCode 146. LRU 缓存 TypeScript
算法·leetcode·缓存·typescript
炘爚16 天前
Linux——Redis
数据库·redis·缓存
小挪号底迪滴16 天前
Redis 和 MySQL 数据不一致怎么办?缓存更新策略实战
redis·mysql·缓存
闪电悠米16 天前
黑马点评-Redis ZSet-实现关注 Feed 流
服务器·网络·数据库·redis·缓存·junit·lua
Saniffer_SH17 天前
【高清视频】Gen6 服务器还没到,Gen6 SSD 怎么测?Emily 现场演示三种测试环境
人工智能·驱动开发·测试工具·缓存·fpga开发·计算机外设·压力测试