Wo soll der Ordner "Assets" in Android Studio abgelegt werden?

1413

Ich bin verwirrt über den assetsOrdner. Es wird in Android Studio nicht automatisch erstellt, und fast alle Foren, in denen dies diskutiert wird, sprechen von Eclipse.

Wie kann das Assets-Verzeichnis in Android Studio konfiguriert werden?

Kalehv
quelle

Antworten:

1670

Da Android Studio verwendet das neue Gradle-basierte Build - System , sollten Sie sein , setzen assets/innerhalb der Quellsätze (zB src/main/assets/).

In einem typischen Android Studio-Projekt verfügen Sie über ein app/Modul mit einem main/Quellensatz ( app/src/main/außerhalb des Projektstamms), sodass Ihre primären Assets eingehen app/src/main/assets/. Jedoch:

  • Wenn Sie für ein Build spezifische Assets benötigen, z. B. debugVersus release, können Sie Quellsätze für diese Rollen erstellen (z. B. app/src/release/assets/).

  • Ihr Produkt Aromen können auch sourcesets mit einem Vermögen haben ( zum Beispiel app/src/googleplay/assets/)

  • Ihre Instrumentierung Tests können einen haben androidTestsourceSet mit benutzerdefinierten Vermögenswerten (zB app/src/androidTest/assets/), obwohl sicher sein , das zu fragen , InstrumentationRegistryfür getContext(), nicht getTargetContext(), auf diese Vermögenswerte zugreifen

Außerdem eine kurze Erinnerung: Assets sind zur Laufzeit schreibgeschützt. Verwenden Sie internen Speicher , externen Speicher oder das Storage Access Framework zum Lesen / Schreiben von Inhalten.

CommonsWare
quelle
1
Ich versuche, eine benutzerdefinierte Schriftart in das Assets-Verzeichnis aufzunehmen. Sollte ich gut sein, indem ich einfach die .ttf-Datei als src / main / assets / font.ttf einfüge? oder muss ich dem Steuerelement die Schriftart explizit per Code zuweisen, um sie zu sehen?
Kalehv
3
@kalehv: "Oder muss ich dem Steuerelement die Schriftart explizit per Code zuweisen, um sie zu sehen?" - Oh, absolut. Sie müssen setTypeface()alle TextViewWidgets (und andere, von denen sie erben TextView) aufrufen, für die Sie diese bestimmte Schriftart verwenden möchten.
CommonsWare
16
Cool. Das hat wie ein Zauber gewirkt. Ich wünschte, es gäbe eine Möglichkeit, die Schriftart "Assets" (benutzerdefiniert) in Styles.xml aufzunehmen, anstatt sie über Code zu verwenden. (Mein Wunsch klingt vielleicht zu dumm, um damit umzugehen, ich bin ein Anfänger, also entschuldigen Sie mich, wenn es ist :-P)
Kalehv
1
Vielen Dank! Ich habe stundenlang danach gesucht. Ich habe versucht, ein Unterverzeichnis für Assets unter / src / main / res / zu erstellen, und das Verzeichnis wurde aus dem apk-Build entfernt.
Srowley
2
@Bora: Dann hast du nicht countries.txtim assets/Verzeichnis. Hier ist ein Beispielprojekt , das unter anderem eine Datei aus Assets in den internen Speicher kopiert. Wenn Sie weitere Bedenken haben, stellen Sie bitte eine separate Frage zum Stapelüberlauf, in der Sie ein minimal reproduzierbares Beispiel angeben .
CommonsWare
1472

Lassen Sie Android Studio das für Sie tun.

  1. Klicken Sie in Android Studio ( 1.0 und höher ) mit der rechten Maustaste auf den Geben Sie hier die Bildbeschreibung einOrdner und navigieren Sie zu Assets Folder.

Geben Sie hier die Bildbeschreibung ein

  1. Klicken Sie im nächsten Bildschirm einfach auf Finish.

Geben Sie hier die Bildbeschreibung ein

Und voila! Der assetsOrdner wird im mainZielquellensatz erstellt.

Geben Sie hier die Bildbeschreibung ein

Prinz
quelle
92
Diese Lösung ist für Android Studio 1.0 und höher. Andere Antworten sind veraltet.
JR Tan
39
Grafische Darstellung macht den Unterschied in der Welt!
Badr
2
Problem: In neueren Versionen von Android Studio (ich verwende 2.1.2) werden leere Asset-Ordner nicht im Fenster "Projektdateien" angezeigt, was das Hinzufügen von Dateien erschwert. :(
Scott Biggs
2
@ScottBiggs Sobald Sie den Assets- Ordner wie oben gezeigt (auf v2.1.2) hinzugefügt haben, sollte er in App> src> main
Prince
2
Was wäre der Link zu diesem Ordner in einer Java-Datei?
VeeK
124

Wenn Sie in die IML-Datei Ihres Projekts schauen, sehen Sie die folgende Zeile:

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

Dies bedeutet, dass der Ordner "Assets" bereits für Gradle deklariert ist. Sie müssen es unter erstellen src/main/(ich verwende Android Studio 0.4.2).

Miguel El Merendero
quelle
8
Meine .iml hat das nicht. Zu welchem ​​Teil der Datei füge ich das hinzu?
Nitsujri
11
Sie haben wahrscheinlich 2 IML-Dateien, überprüfen Sie beide.
fernandohur
1
check app.iml not <Projektname> .iml
Tony
1
Immer in .im an der Wurzel von dir src .. nicht im Projektverzeichnis .. Das ist nur für Gradle Sachen.
Sindri Þór
86

Wählen Sie den appOrdner und dann:

File> New> folder> assets Folder,

Geben Sie hier die Bildbeschreibung ein

Der Standardspeicherort befindet sich im /mainOrdner

Geben Sie hier die Bildbeschreibung ein

Jorgesys
quelle
2
Dies ist die TL; DR-Version der akzeptierten Antwort und tatsächlich nützlich.
Guillaume Perrot
45

Zunächst wird der Ordner "Assets" nicht automatisch mit dem Projekt erstellt. Wir müssen es schaffen.

Der Speicherort des Assets-Ordners lautet: App> src> Assets

Bitte schauen Sie sich das einfache Bild unten an.

Geben Sie hier die Bildbeschreibung ein

Hinweis: Zum Erstellen eines Assets-Ordners klicken Sie einfach auf Projekt => Rechtsklick => Neu auswählen => Ordner => Assets. Es wird ein Assets-Ordner erstellt.

Lovekush Vishwakarma
quelle
Wenn ein anderer Neuling durch all diese Antworten wie ich verwirrt war, kann die Ordnerstruktur je nach Auswahl in der oberen linken Ecke anders aussehen. Meins war "Android", während alle Leute hier "Projekt" oder "Projektdateien" verwenden.
Big_Chair
Die Projektstruktur unterscheidet sich je nachdem, was Sie für Projektstruktur, Projekt, Projektdateien, Pakete, Android usw. auswählen. Sie folgen jedoch den Bildschirmen, die ich freigebe, und sehen die Auswahl des Projektstrukturtyps.
Lovekush Vishwakarma
39

Befolgen Sie diese Schritte ganz einfach

Datei> Neu> Ordner> Assets-Ordner

Hinweis: Die App muss vor dem Erstellen eines Ordners ausgewählt werden.

Pankaj Kumar
quelle
29

In Android Studio können Sie angeben, wo sich die Ordner für Quelle, Auflösung und Assets befinden. Für jedes Modul / jede App in der Datei build.gradle können Sie Folgendes hinzufügen:

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.1"

    sourceSets {
        main {
            java.srcDirs = ['src']
            assets.srcDirs = ['assets']
            res.srcDirs = ['res']
            manifest.srcFile 'AndroidManifest.xml'
        }
    }
}
Sportler Appman
quelle
Ist dies notwendig, wenn man der Konvention folgt?
H. Rabiee
Dies ist sehr nützlich, wenn Ihr Projekt nicht aus der Vorlage von Android Studio erstellt wurde (z. B. aus dem AOSP-Quellcode geklont)
Phạm Nguyễn Hoàng,
22

Doppelte Schicht, dann geben Sie Assets Folder ein

Wählen Sie es aus, um es an der richtigen Stelle zu erstellen

Mohammad Alotol
quelle
1
Einfachste! (Y)
GreenROBO
Dies ist eine geheime. Beeindruckend. Danke
ralphgabb
18

Klicken Sie auf Haupt → Neu -> Verzeichnis → und geben Sie als Namen "Assets" ein.

oder ... Hauptordner -> Neu -> Ordner -> Assets-Ordner (siehe Bild)

Geben Sie hier die Bildbeschreibung ein

Pablo Cegarra
quelle
14

Datei> Neu> Ordner> Assets Ordner

Assets-Ordner

Gowtham Subramaniam
quelle
10

Wenn Sie alle Ihre Aufzählungszeichen in diesem Thread vergeblich ausprobiert haben, versuchen Sie, Ihr Projekt zu bereinigen. In meinem Fall hat es erst nach Projet-> geklapptclean

Zizoujab
quelle
10

Klicken Sie mit der rechten Maustaste auf App-Ordner-> Neu-> Ordner-> Assets-Ordner-> Zielquellen-Set festlegen-> Klicken Sie auf die Schaltfläche Fertig stellen

Shraddha Patel
quelle
9

Zwei Wege:

  1. Wählen Sie App / Hauptordner, klicken Sie mit der rechten Maustaste und wählen Sie Neu => Ordner => Asset-Ordner. Es wird ein 'Assets'-Verzeichnis in main erstellt.

  2. Wählen Sie den Hauptordner aus, klicken Sie mit der rechten Maustaste und wählen Sie Neu => Verzeichnis. Geben Sie den Namen als 'Assets' ein => OK.

Geben Sie hier die Bildbeschreibung ein

TejpalBh
quelle
7

Wenn ein Upgrade auf die Release - Version von Android Studio, können Sie automatisch auf die neuen Android - Projekt - Ansicht (siehe geschaltet werden hier für weitere Informationen). Wenn Sie entweder zur Projekt- oder zur Paketansicht zurückkehren, sollte die Standardordnerhierarchie eines Gradle-basierten Projekts angezeigt werden. Informationen zum entsprechenden Speicherort finden Sie in der Antwort von CommonsWare .

stkent
quelle
7

Legen Sie den Assets- Ordner in den main/src/assetsPfad.

Roland Weisleder
quelle
6

Ich brauche Konfigurationsparameter für Gradle.
Ich hoffe, es wird funktionieren

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

Es wird möglicherweise nicht in Ihrer Seitenleiste angezeigt, wenn die App ausgewählt ist. Klicken Sie oben auf das Dropdown-Menü mit der Aufschrift Android und wählen Sie Pakete aus. du wirst es dann sehen.

S.Doyle
quelle
3

Schritt 1: Gehen Sie zu Dateien. Schritt 2: Gehen Sie zu Ordner. Schritt 3: Assets-Ordner erstellen.

Fügen Sie im Ordner "Assets" einfach Schriftarten ein und verwenden Sie diese bei Bedarf.

DEEP ADHIYA
quelle
2

Klicken Sie in Android Studio auf den appOrdner, dann auf den srcOrdner und dann auf den mainOrdner. Im Hauptordner können Sie den Assets-Ordner hinzufügen.

Dharmendra Pratap
quelle
3
Dies gibt keine Antwort auf die Frage. Sobald Sie einen ausreichenden Ruf haben, können Sie jeden Beitrag kommentieren . Geben Sie stattdessen Antworten, die nicht vom Fragesteller geklärt werden müssen . - Von der Überprüfung
Gaurav Dave
2
Klicken Sie in Android Studio auf App-Ordner, dann auf src-Ordner und dann auf Hauptordner. Im Hauptordner können Sie den Ordner "Assets" hinzufügen.
Dharmendra Pratap
2

Erstellen Sie entweder ein Verzeichnis unter / app / src / main oder verwenden Sie Studio-Datei-> Neu -> Ordner -> Assets-Ordner.

Durgesh
quelle
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 
indrajeet jyoti
quelle