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

1413

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

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

kalehv
источник

Ответы:

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 для чтения / записи контента.

CommonsWare
источник
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папки

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

Jorgesys
источник
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
22

Просто дважды сдвиньте, затем введите папку активов

выберите его для создания в правильном месте

Мухаммед Алотол
источник
1
Самый простой! (Y)
ГринРОБО
Это секрет. Ух ты. Спасибо
ralphgabb
18

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

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

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

Пабло Чегарра
источник
14

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

Папка активов

Гаутам Субраманиам
источник
10

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

zizoujab
источник
10

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

Шраддха Патель
источник
9

Два пути:

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

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

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

TejpalBh
источник
7

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

stkent
источник
7

Поместите папку ресурсов в main/src/assetsпуть.

Роланд Вайследер
источник
6

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

// file: build.gradle  
sourceSets {
    main {
        assets.srcDirs = ['src/main/res/icon/', 'src/main/assets/']
    }
}
madjardi
источник
6
Src/main/Assets

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

S.Doyle
источник
3

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

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

ГЛУБОКАЯ АДХИЯ
источник
2

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

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

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

Durgesh
источник
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 
Индраджит Джиоти
источник