Android Studio 中 assets 文件夹的放置位置
Android Studio 中 assets 文件夹的放置位置
技术背景
由于 Android Studio 使用基于 Gradle 的新构建系统,因此需要按照一定规则放置 assets 文件夹。
实现步骤
通用位置
在典型的 Android Studio 项目中,通常会有一个 app/ 模块,有一个 main/ 源码集(项目根目录下的 app/src/main/),主要的 assets 文件夹应放在 app/src/main/assets/ 。
按构建类型放置
若需要特定于构建类型的 assets,如 debug 与 release 版本不同的资源,可以为这些角色创建源码集。比如,debug 版本的 assets 放在 app/src/debug/assets/,release 版本的放在 app/src/release/assets/。
按产品风味放置
产品风味也可以有带 assets 的源码集,例如 app/src/googleplay/assets/。
测试专用放置
仪器测试(instrumentation tests)可以有一个带有自定义 assets 的 androidTest 源码集,如 app/src/androidTest/assets/。不过,访问这些资源时,要向 InstrumentationRegistry 请求 getContext(),而不是 getTargetContext()。
通过 Android Studio 菜单创建
- 方法一:在 Android Studio(1.0 及以上版本)中,右键单击相应文件夹,选择
Assets Folder,然后点击Finish,它会在main源码集中创建assets文件夹。 - 方法二:选择
app文件夹,通过File->New->folder->assets Folder创建,默认位置在/main文件夹内。 - 方法三:可以直接在
main文件夹下,右键选择New->Directory,命名为assets。 - 方法四:在项目结构中进行设置,路径为 Project Structure > Project Settings 。
核心代码
如果需要在 Gradle 中配置 assets 文件夹的路径,可以在 build.gradle 文件中添加如下代码:
1 | |
如果需要指定多个 assets 文件夹,则可以这样配置:
1 | |
最佳实践
- 对于通用资源,统一放在
app/src/main/assets/,便于管理和维护。 - 对于不同构建类型或产品风味的资源,按需创建相应的源码集,避免资源混乱。
- 在创建
assets文件夹时,尽量使用 Android Studio 的菜单功能,避免手动创建可能出现的配置错误。
常见问题
- 文件夹不显示:如果在侧边栏看不到
assets文件夹,可能是因为选择了android视图。可点击顶部的下拉菜单,选择Packages视图,即可看到标准的文件夹层级结构。 - 创建无效:若尝试了各种方法都无法创建
assets文件夹,可以尝试清理项目,即通过Project->clean来解决。
Android Studio 中 assets 文件夹的放置位置
https://119291.xyz/posts/android-studio-assets-folder-placement/