ChatGPT解决这个技术问题 Extra ChatGPT

将“资产”文件夹放在 Android Studio 中的什么位置?

我对 assets 文件夹感到困惑。它不是在 Android Studio 中自动创建的,几乎所有讨论这个问题的论坛都在谈论 Eclipse。

如何在 Android Studio 中配置 Assets 目录?


s
stkent

由于 Android Studio 使用 the new Gradle-based build system,您应该是 putting assets/ inside of the source sets(例如,src/main/assets/)。

在典型的 Android Studio 项目中,您将拥有一个 app/ 模块,其中包含一个 main/ 源集(app/src/main/ 位于项目根目录之外),因此您的主要资产将放在 app/src/main/assets/ 中。然而:

如果您需要特定于构建类型的资产,例如调试与发布,您可以为这些角色创建源集(例如,.app/src/release/assets/)

您的产品风格还可以具有带有资产的源集(例如,app/src/googleplay/assets/)

您的仪器测试可以有一个带有自定义资产(例如,app/src/androidTest/assets/)的 androidTest 源集,但一定要向 InstrumentationRegistry 询问 getContext(),而不是 getTargetContext(),以访问这些资产

另外,快速提醒一下:资产在运行时是只读的。使用 internal storageexternal storagethe Storage Access Framework 读取/写入内容。


我正在尝试在资产目录中包含自定义字体。我应该将 .ttf 文件粘贴为 src/main/assets/font.ttf 吗?还是我需要通过代码明确地将字体分配给控件才能看到它?
@kalehv:“或者我是否需要通过代码明确地将字体分配给控件才能看到它?” ——哦,绝对的。您将需要在您想要使用此特定字体的所有 TextView 小部件(以及从 TextView 继承的其他小部件)上调用 setTypeface()
凉爽的。这就像一个魅力。我希望有一种方法可以将 Assets 字体(自定义)包含到 Styles.xml 中,而不是通过代码使用它。 (我的愿望可能听起来太愚蠢了,我是初学者,如果是的话,请原谅:-P)
谢谢!我一直在为此寻找几个小时。我尝试在 /src/main/res/ 下为资产创建一个子目录,并且该目录已从 apk 构建中删除。
@Bora:那么 assets/ 目录中没有 countries.txtHere is a sample project,其中包括将文件从资产复制到内部存储。如果您还有其他问题,请提出一个单独的 Stack Overflow 问题,并在其中提供 minimal reproducible example
P
Prince

让 Android Studio 为您完成。

在 Android Studio(1.0 及更高版本)中,右键单击文件夹并导航到 Assets 文件夹。

https://i.stack.imgur.com/nJuct.png

在下一个屏幕上,只需单击完成。

https://i.stack.imgur.com/q0t34.png

瞧!它将在 main 目标源集中创建 assets 文件夹。

https://i.stack.imgur.com/2o3SW.png


此解决方案适用于 Android Studio 1.0 及更高版本。其他答案已过时。
图形插图使世界变得与众不同!
问题:在较新版本的 Android Studio 上(我使用的是 2.1.2),项目文件窗口中不显示空资产文件夹,因此难以添加文件。 :(
@ScottBiggs 添加如上所示的资产文件夹后(在 v2.1.2 上),它应该在 app > src > main 中可见
java文件中这个文件夹的链接是什么?
P
Peter Mortensen

查看项目的 .iml 文件,您将看到以下行:

 <option name="ASSETS_FOLDER_RELATIVE_PATH" value="/src/main/assets" />

这意味着已经为 Gradle 声明了“assets”文件夹。您需要在 src/main/ 下创建它(我使用的是 Android Studio 0.4.2)。


我的 .iml 没有这个,我应该将它添加到文件的哪个部分?
您可能有 2 个 .iml 文件,请检查它们。
检查 app.iml 不是 .iml
始终在 .im 中,位于您的 src 的根目录中 .. 不在项目目录中 .. 这只是用于 gradle 的东西。
J
Jorgesys

选择 app 文件夹,然后:

File > New > folder > assets Folder ,

https://i.stack.imgur.com/Oxa83.png

默认位置在 /main 文件夹内

https://i.stack.imgur.com/khAqo.png


这是已接受答案的 TL;DR 版本,实际上很有用。
A
Arun J

首先,项目不会自动创建“Assets”文件夹。我们必须创造它。

Assets文件夹的位置是:App > src > Assets

请看下面的简单图像。

https://i.stack.imgur.com/cGCyx.png

注意:要创建资产文件夹,只需单击项目 => 右键单击 => 选择新建 => 文件夹 => 资产。它将创建资产文件夹。


如果另一个新手像我一样对所有这些答案感到困惑,则文件夹结构可能会根据左上角的选择而有所不同。我的是“Android”,而这里的所有人都在使用“Project”或“Project Files”。
项目结构根据您为项目结构、项目、项目文件、包、Android 等选择的内容而有所不同,但您可以按照我分享的屏幕来查看项目结构类型的选择。
A
Arun J

很简单,按照以下步骤

文件 > 新建 > 文件夹 > 资产文件夹

注意:必须在创建文件夹之前选择应用程序。


S
Sportman Appman

在android studio中你可以指定source、res、assets文件夹的位置。对于 build.gradle 文件中的每个模块/应用程序,您可以添加如下内容:

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.1"

    sourceSets {
        main {
            java.srcDirs = ['src']
            assets.srcDirs = ['assets']
            res.srcDirs = ['res']
            manifest.srcFile 'AndroidManifest.xml'
        }
    }
}

如果遵守公约,这是否必要?
如果您的项目不是从 Android Studio 的模板中创建的(例如从 AOSP 源代码中克隆),这将非常有用
M
Mohammad Alotol

简单地说,双班,然后键入资产文件夹

选择它在正确的地方创建


最简单的一个! (Y)
这是一个秘密。哇。谢谢
P
Pablo Cegarra

单击主 → 新建 -> 目录 → 并键入名称“资产”

或...主 -> 新 -> 文件夹 -> 资产文件夹(见图)

https://i.stack.imgur.com/bnYSK.png


G
Gowtham Subramaniam

文件 > 新建 > 文件夹 > 资产文件夹

https://i.stack.imgur.com/0KMSa.png


A
AmrDeveloper

在 Android Studio 4.1.1 中

右键单击您的模块(例如应用程序)-> 新建-> 文件夹-> 资产文件夹

https://i.stack.imgur.com/fj8zw.png


S
Shraddha Patel

右键单击应用程序文件夹->新建->文件夹->资产文件夹->设置目标源集->单击完成按钮


A
Arun J

两种方式:

选择应用程序/主文件夹,右键单击并选择新建 => 文件夹 => 资产文件夹。它将在 main.js 中创建“资产”目录。选择主文件夹,右键单击并选择新建 => 目录输入名称为“资产”=> 确定。

https://i.stack.imgur.com/nFVlK.png


z
zizoujab

如果您在此线程中尝试了所有的子弹都徒劳无功,请尝试清理您的项目。就我而言,它仅在 Projet -> 之后才有效。 clean


R
Roland Weisleder

assets 文件夹放在 main/src/assets 路径中。


w
winchester100
Src/main/Assets

如果选择了该应用程序,它可能不会显示在您的侧边栏上。单击顶部显示 android 的下拉菜单并选择包。你会看到它。


m
madjardi

需要为 gradle 配置参数,我希望它会起作用

// file: build.gradle  
sourceSets {
    main {
        assets.srcDirs = ['src/main/res/icon/', 'src/main/assets/']
    }
}

s
stkent

升级到 Android Studio 的发布版本时,您可能会自动切换到新的 Android 项目视图(有关详细信息,请参阅 here)。如果您切换回 Project 或 Packages 视图,您应该会看到基于 Gradle 的项目的标准文件夹层次结构。然后参考 CommonsWare's answer 找到合适的位置。


D
Dharman

Project -> app -> src -> main -> RMB(鼠标右键) -> New -> 目录:

https://i.stack.imgur.com/EfO5C.png

https://i.stack.imgur.com/GCCkQ.png


P
Peter Mortensen

在 Android Studio 中,依次单击 app 文件夹、src 文件夹和 main 文件夹。在主文件夹中,您可以添加资产文件夹。


这没有提供问题的答案。一旦你有足够的reputation,你就可以comment on any post;相反,provide answers that don't require clarification from the asker。 - From Review
在 Android Studio 中点击 app 文件夹,然后点击 src 文件夹,然后点击 main 文件夹。在主文件夹中,您可以添加 Assets 文件夹。
D
Deep Adhia

第 1 步:转到文件。第 2 步:转到文件夹。第 3 步:创建资产文件夹。

在 Assets 文件夹中,只需放置字体并在需要时使用它。


i
indrajeet jyoti
follow these steps 

1)file->New->Folder
 there are multiple options like
      aidl folder
      assets folder
      jni folder
2) choose options assets folder
3) then there is option to change path of assets folder if you 
    want to change then check otherwise left that checkbox of cahnge folder location
4) click on finish 

D
Durgesh

要么在 /app/src/main 下创建一个目录,要么使用 studio File-> New -> Folder -> Assets Folder。


s
shohruh Maxmudov

在 Android Studio 中,右键单击应用程序中的文件夹->src->main,然后创建名为 assets 的新目录名称。


S
Shamshirsaz.Navid

似乎没有人提到这一点:您可以在 Project Structure > Project Settings 中定义它:

https://i.stack.imgur.com/zpyOe.png