Où placer le dossier 'assets' dans Android Studio?

1413

Je suis confus au sujet du assetsdossier. Il n'est pas créé automatiquement dans Android Studio, et presque tous les forums dans lesquels cela est discuté parlent d'Eclipse.

Comment configurer le répertoire des actifs dans Android Studio?

kalehv
la source

Réponses:

1670

Étant donné qu'Android Studio utilise le nouveau système de construction basé sur Gradle , vous devriez mettre à l' assets/intérieur des ensembles source (par exemple, src/main/assets/).

Dans un projet Android Studio typique, vous aurez un app/module, avec un ensemble de main/sources ( app/src/main/hors de la racine du projet), et donc vos ressources principales entreront app/src/main/assets/. Toutefois:

  • Si vous avez besoin d'actifs spécifiques à une génération, tels que debugversus release, vous pouvez créer des ensembles de sources pour ces rôles (par exemple, app/src/release/assets/) .

  • Les saveurs de vos produits peuvent également avoir des ensembles de sources avec des actifs (par exemple, app/src/googleplay/assets/)

  • Vos tests d'instrumentation peuvent avoir un androidTestsourceset avec des actifs personnalisés (par exemple app/src/androidTest/assets/), mais assurez - vous de demander au InstrumentationRegistrypour getContext(), non getTargetContext(), d'accéder à ces actifs

Un rappel rapide: les ressources sont en lecture seule au moment de l'exécution. Utiliser le stockage interne , stockage externe , ou le cadre d' accès au stockage pour le contenu en lecture / écriture.

CommonsWare
la source
1
J'essaie d'inclure une police personnalisée dans le répertoire des actifs. Dois-je être prêt à simplement coller le fichier .ttf en tant que src / main / assets / font.ttf? ou dois-je affecter la police explicitement par code au contrôle pour le voir?
kalehv
3
@kalehv: "ou dois-je affecter la police explicitement par code au contrôle pour le voir?" - oh, absolument. Vous devrez appeler setTypeface()tous les TextViewwidgets (et autres qui héritent de TextView) dont vous souhaitez utiliser cette police particulière.
CommonsWare
16
Cool. Cela a fonctionné comme un charme. Je souhaite qu'il y ait un moyen d'inclure la police Assets (personnalisée) dans Styles.xml plutôt que de l'utiliser via du code. (Mon souhait peut sembler trop stupide à gérer, je suis un débutant alors excusez-moi si c'est :-P)
kalehv
1
Je vous remercie! Cela fait des heures que je cherche. J'ai essayé de créer un sous-répertoire pour les actifs sous / src / main / res / et le répertoire était supprimé de la version apk.
srowley
2
@Bora: Alors vous n'en avez pas countries.txtdans le assets/répertoire. Voici un exemple de projet qui, entre autres, copie un fichier des actifs dans le stockage interne. Si vous avez d'autres préoccupations, veuillez poser une question distincte sur le débordement de pile, où vous fournissez un exemple reproductible minimal .
CommonsWare
1473

Laissez Android Studio le faire pour vous.

  1. Dans Android Studio ( 1.0 et supérieur ), cliquez avec le bouton droit sur le entrez la description de l'image icidossier et accédez au Assets Folder.

entrez la description de l'image ici

  1. Sur l'écran suivant, cliquez simplement sur Finish.

entrez la description de l'image ici

Et le tour est joué! Il créera le assetsdossier dans l' mainensemble source cible.

entrez la description de l'image ici

Prince
la source
92
cette solution est pour Android Studio 1.0 et supérieur. D'autres réponses sont obsolètes.
JR Tan
40
L'illustration graphique fait toute la différence dans le monde!
Badr
2
Problème: sur les versions plus récentes d'Android Studio (j'utilise 2.1.2), les dossiers de ressources vides ne sont pas affichés dans la fenêtre Fichiers de projet, ce qui rend difficile l'ajout de fichiers. :(
Scott Biggs
2
@ScottBiggs Une fois que vous avez ajouté le dossier d' actifs comme indiqué ci-dessus (sur v2.1.2), il devrait être visible dans app> src> main
Prince
2
Quel serait le lien vers ce dossier dans un fichier java?
VeeK
124

En regardant à l'intérieur du fichier .iml de votre projet, vous verrez la ligne suivante:

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

Cela signifie que le dossier "assets" est déjà déclaré pour Gradle. Vous devrez le créer sous src/main/(j'utilise Android Studio 0.4.2).

Miguel El Merendero
la source
8
Mon .iml ne l'a pas, à quelle partie du fichier dois-je l'ajouter?
nitsujri
11
vous avez probablement 2 fichiers .iml, vérifiez les deux.
fernandohur
1
vérifier app.iml pas <Project-Name> .iml
Tony
1
Toujours dans .im à la racine de vous src .. pas dans le répertoire du projet .. C'est juste pour des trucs gradle.
Sindri Þór
86

Sélectionnez le appdossier puis:

File> New> folder> assets Folder,

entrez la description de l'image ici

l'emplacement par défaut est dans le /maindossier

entrez la description de l'image ici

Jorgesys
la source
2
Il s'agit de la version TL; DR de la réponse acceptée et est en fait utile.
Guillaume Perrot
45

Tout d'abord, le dossier "Actifs" ne sera pas créé automatiquement avec le projet. Nous devons le créer.

L'emplacement du dossier Assets est: App> src> Assets

Veuillez regarder l'image simple ci-dessous.

entrez la description de l'image ici

Remarque: Pour créer un dossier d'actifs, cliquez simplement sur Projet => Clic droit => Sélectionnez Nouveau => Dossier => Actifs. Il créera le dossier Assets.

Lovekush Vishwakarma
la source
Si un autre débutant était confus par toutes ces réponses comme moi, la structure des dossiers peut être différente en fonction de la sélection dans le coin supérieur gauche. Le mien était "Android" alors que toutes les personnes ici utilisent "Project" ou "Project Files".
Big_Chair
La structure du projet est différente en fonction de ce que vous sélectionnez pour Structure de projet, projet, fichiers de projet, packages, Android, etc., mais vous suivez les écrans que je partage et voyez la sélection du type de structure de projet.
Lovekush Vishwakarma
39

C'est simple, suivez ces étapes

Fichier> Nouveau> Dossier> Dossier des actifs

Remarque: l' application doit être sélectionnée avant de créer un dossier.

Pankaj kumar
la source
29

Dans Android Studio, vous pouvez spécifier où se trouvent les dossiers source, res, assets. pour chaque module / application du fichier build.gradle, vous pouvez ajouter quelque chose comme:

android {
    compileSdkVersion 21
    buildToolsVersion "21.1.1"

    sourceSets {
        main {
            java.srcDirs = ['src']
            assets.srcDirs = ['assets']
            res.srcDirs = ['res']
            manifest.srcFile 'AndroidManifest.xml'
        }
    }
}
Sportman Appman
la source
est-ce nécessaire si l'on suit la convention?
H.Rabiee
Ceci est super utile si votre projet n'est pas créé à partir du modèle d'Android Studio (par exemple cloné à partir du code source AOSP)
Phạm Nguyễn Hoàng
22

Simplement, double shift puis tapez Assets Folder

choisissez-le pour être créé au bon endroit

Mohammad Alotol
la source
1
Le plus simple! (Y)
GreenROBO
C'est un secret. Sensationnel. Merci
ralphgabb
18

Cliquez sur principal → nouveau -> répertoire → et tapez comme nom "actifs"

ou ... principal -> nouveau -> dossier -> dossier d'actifs (voir image)

entrez la description de l'image ici

Pablo Cegarra
la source
14

Fichier> Nouveau> dossier> dossier d'actifs

Dossier des actifs

Gowtham Subramaniam
la source
10

Si vous avez essayé toutes vos balles dans ce fil en vain, essayez de nettoyer votre projet. Dans mon cas, cela n'a fonctionné qu'après Projet->clean

zizoujab
la source
10

clic droit sur le dossier de l'application-> nouveau-> dossier-> dossier des actifs-> définir la source cible définie-> cliquer sur le bouton Terminer

Shraddha Patel
la source
9

Deux façons:

  1. Sélectionnez l'application / dossier principal, cliquez avec le bouton droit et sélectionnez Nouveau => Dossier => Dossier d'actifs. Il créera le répertoire «assets» en principal.

  2. Sélectionnez le dossier principal, cliquez avec le bouton droit et sélectionnez Nouveau => Répertoire Entrez le nom comme 'actifs' => Ok.

entrez la description de l'image ici

TejpalBh
la source
7

Lors de la mise à niveau vers la version finale d'Android Studio, vous pouvez être automatiquement basculé vers la nouvelle vue du projet Android (voir ici pour plus d'informations). Si vous revenez à la vue Projet ou Packages, vous devriez voir la hiérarchie de dossiers standard d'un projet basé sur Gradle. Reportez-vous ensuite à la réponse de CommonsWare pour l'emplacement approprié.

stkent
la source
7

Placez le dossier des ressources dans le main/src/assetschemin.

Roland Weisleder
la source
6

besoin de configurer le paramètre pour gradle
j'espère que cela fonctionnera

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

Il peut ne pas s'afficher sur votre barre latérale si l'application est sélectionnée. Cliquez sur le menu déroulant en haut qui indique Android et sélectionnez les packages. vous le verrez alors.

S.Doyle
la source
3

Étape 1: Allez dans Fichiers. Étape 2: accédez aux dossiers. Étape 3: créer un dossier d'actifs.

Dans le dossier Assets, mettez simplement les polices et utilisez-les si nécessaire.

DEEP ADHIYA
la source
2

Dans Android Studio, cliquez sur le appdossier, puis sur le srcdossier, puis sur le maindossier. Dans le dossier principal, vous pouvez ajouter le dossier des ressources.

Dharmendra Pratap
la source
3
Cela ne fournit pas de réponse à la question. Une fois que vous avez une réputation suffisante, vous pourrez commenter n'importe quel message ; fournissez plutôt des réponses qui ne nécessitent pas de clarification de la part du demandeur . - De l'avis
Gaurav Dave
2
Dans Android Studio, cliquez sur le dossier d'application, puis sur le dossier src, puis sur le dossier principal. Dans le dossier principal, vous pouvez ajouter le dossier Assets.
Dharmendra Pratap
2

Créez un répertoire sous / app / src / main ou utilisez Studio File-> New -> Folder -> Assets Folder.

Durgesh
la source
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
la source