Где разместить папку «активы» в Android Studio?


1413

Я запутался в assetsпапке. Он не создается автоматически в Android Studio, и почти все форумы, на которых это обсуждается, говорят об Eclipse.

Как настроить каталог Assets в Android Studio?

Ответы:


1670

Поскольку в Android Studio используется новая система сборки на основе Gradle , вы должны поместить assets/исходные наборы (например, src/main/assets/).

В типичном проекте Android Studio у вас будет app/модуль с main/набором исходных кодов ( app/src/main/вне корня проекта), и ваши основные ресурсы будут включены app/src/main/assets/. Однако:

  • Если вам нужны ресурсы, специфичные для сборки, например, debugпротив release, вы можете создать наборы исходных кодов для этих ролей (например,. app/src/release/assets/)

  • Ароматы вашего продукта также могут иметь исходные наборы с активами (например, app/src/googleplay/assets/)

  • Ваши приборы тесты могут иметь androidTestsourceset с пользовательскими активами (например, app/src/androidTest/assets/), хотя обязательно спросить InstrumentationRegistryдля getContext(), не getTargetContext(), чтобы получить доступ к этим активам

Кроме того, быстрое напоминание: ресурсы доступны только для чтения во время выполнения. Используйте внутреннее хранилище , внешнее хранилище или Storage Access Framework для чтения / записи контента.


1
Я пытаюсь включить пользовательский шрифт в каталог ресурсов. Должен ли я быть хорошим, просто вставив файл .ttf в src / main / assets / font.ttf? или мне нужно назначить шрифт явно по коду для элемента управления, чтобы увидеть его?
kalehv

3
@kalehv: "или мне нужно явно назначить шрифт кодом для элемента управления, чтобы увидеть его?" - абсолютно. Вам нужно будет вызвать setTypeface()все TextViewвиджеты (и другие, которые наследуются TextView), которые вы хотите использовать этот конкретный шрифт.
CommonsWare

16
Круто. Это сработало как шарм. Хотелось бы, чтобы был способ включить шрифт Assets (custom) в Styles.xml, а не использовать его через код. (Мое желание может показаться слишком глупым, чтобы справиться с ним, я новичок, так что извините, если это так :-P)
kalehv

1
Спасибо! Я искал часы для этого. Я попытался создать подкаталог для ресурсов в / src / main / res /, и этот каталог был удален из сборки apk.
Сроули

2
@ Бора: Тогда у вас нет countries.txtв assets/каталоге. Вот пример проекта, который, помимо прочего, копирует файл из ресурсов во внутреннее хранилище. Если у вас есть дополнительные проблемы, пожалуйста, задайте отдельный вопрос переполнения стека, где вы приводите минимальный воспроизводимый пример .
CommonsWare

1473

Пусть Android Studio сделает это за вас.

  1. В Android Studio ( версии 1.0 и выше ) щелкните правой кнопкой мыши введите описание изображения здесьпапку и перейдите к Assets Folder.

введите описание изображения здесь

  1. На следующем экране просто нажмите Finish.

введите описание изображения здесь

И вуаля! Это создаст assetsпапку в mainцелевом наборе источников.

введите описание изображения здесь


92
Это решение для Android Studio 1.0 и выше. Другие ответы устарели.
JR Tan

40
Графическая иллюстрация имеет все значение в мире!
Бадр

2
Проблема: в новых версиях Android Studio (я использую 2.1.2) пустые папки ресурсов не отображаются в окне «Файлы проекта», что затрудняет добавление файлов. :(
Скотт Биггс

2
@ScottBiggs После того, как вы добавите папку ресурсов, как показано выше (в v2.1.2), она должна быть видна внутри app> src> main
Prince

2
Какая будет ссылка на эту папку в файле Java?
VeeK

124

Заглянув внутрь файла .iml вашего проекта, вы увидите следующую строку:

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

Это означает, что папка «assets» уже объявлена ​​для Gradle. Вам нужно будет создать его под src/main/(я использую Android Studio 0.4.2).


8
У моего .iml этого нет, к какой части файла я могу добавить это?
nitsujri

11
у вас, вероятно, 2 файла .iml, проверьте оба.
Фернандохур

1
проверьте app.iml, а не <Project-Name> .iml
Тони

1
Всегда в .im в корне у вас src .. не в каталоге проекта .. Это просто для мелочи.
Синдри Тор

86

Выберите appпапку и затем:

File> New> folder> assets Folder,

введите описание изображения здесь

расположение по умолчанию находится внутри /mainпапки

введите описание изображения здесь


2
Это версия принятого ответа TL; DR, которая действительно полезна.
Гийом Перро,

46

Прежде всего, папка «Активы» не будет создана автоматически с проектом. Мы должны создать это.

Расположение папки «Ресурсы»: App> src> Assets

Пожалуйста, взгляните на простое изображение ниже.

введите описание изображения здесь

Примечание. Для создания папки ресурсов просто нажмите Project => Щелкните правой кнопкой мыши => Выберите New => Folder => Assets. Это создаст папку активов.


Если все эти ответы, такие как я, запутали другого новичка, структура папок может выглядеть по-разному в зависимости от выбора в верхнем левом углу. Мой был "Android", в то время как все люди здесь используют "Project" или "Project Files".
Big_Chair

Структура проекта отличается в зависимости от того, что вы выбрали для структуры проекта, проекта, файлов проекта, пакетов, Android и т. д., но вы следите за экранами, которыми я делюсь, и видите выбор типа структуры проекта.
Ловекуш Вишвакарма

39

Это просто, следуйте этим шагам

Файл> Создать> Папка> Папка с активами

Примечание: приложение должно быть выбрано до создания папки.


29

В 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)
Phạm Nguyễn Hoàng


18

Нажмите на основной → новый -> каталог → и введите в качестве имени «активы»

или ... главная -> новая -> папка -> папка ресурсов (см. изображение)

введите описание изображения здесь



10

Если вы попробовали все свои пули в этой теме, попробуйте очистить свой проект. В моем случае это сработало только после Projet->clean


10

щелкните правой кнопкой мыши на папке приложения-> new-> folder-> папка Assets-> set Target Source set-> нажмите кнопку Finish


9

Два пути:

  1. Выберите приложение / основную папку, щелкните правой кнопкой мыши и выберите New => Folder => Asset Folder. Это создаст каталог 'assets' в main.

  2. Выберите основную папку, щелкните правой кнопкой мыши и выберите New => Directory. Введите имя как «assets» => Ok.

введите описание изображения здесь


7

При обновлении до версии выпуска Android Studio, вы можете быть автоматически переведены на новый Android проект View (см здесь для получения дополнительной информации). Если вы вернетесь к представлению Project или Packages, вы должны увидеть стандартную иерархию папок проекта на основе Gradle. Затем обратитесь к ответу CommonsWare для соответствующего местоположения.



6

нужно настроить параметр для Gradle,
я надеюсь, это будет работать

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

6
Src/main/Assets

Он может не отображаться на боковой панели, если приложение выбрано. Нажмите на раскрывающееся меню вверху с надписью android и выберите пакеты. вы увидите это тогда.


3

Шаг 1: Перейти к файлам. Шаг 2: Перейдите в папки. Шаг 3: Создать папку активов.

В папке Assets просто поместите шрифты и используйте их при необходимости.


2

В Android Studio щелкните appпапку, затем srcпапку, а затем mainпапку. Внутри главной папки вы можете добавить папку ресурсов.


3
Это не дает ответа на вопрос. Как только у вас будет достаточно репутации, вы сможете комментировать любой пост ; вместо этого предоставьте ответы, которые не требуют разъяснений от автора . - Из Обзора
Гаурав Дейв

2
В Android Studio щелкните папку приложения, затем папку src, затем основную папку. Внутри главной папки вы можете добавить папку активов.
Дхармендра Пратап

2

Либо создайте каталог в / app / src / main, либо используйте студийный файл-> Создать-> Папка -> Папка с активами.


2
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 
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.