1515 votes

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

Je suis confus au sujet de la assets dossier. 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 Assets dans Android Studio ?

1766voto

CommonsWare Points 402670

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

Dans un projet typique d'Android Studio, vous disposez d'un élément app/ avec un module main/ sourceset ( app/src/main/ du projet Root), et donc vos actifs principaux seraient placés dans app/src/main/assets/ . Cependant :

  • Si vous avez besoin d'actifs spécifiques à un type de construction, tels que debug par rapport à release vous pouvez créer des ensembles de sources pour ces rôles (par ex. app/src/release/assets/ )

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

  • Vos tests d'instrumentation peuvent avoir un androidTest avec des ressources personnalisées (par ex, app/src/androidTest/assets/ ), mais n'oubliez pas de demander à l InstrumentationRegistry pour getContext() , pas getTargetContext() pour accéder à ces actifs

Par ailleurs, un petit rappel : les actifs sont en lecture seule au moment de l'exécution. Utiliser stockage interne , stockage externe o le cadre d'accès au stockage pour le contenu en lecture/écriture.

1 votes

J'essaie d'inclure une police personnalisée dans le répertoire assets. Est-ce que je peux me contenter de coller le fichier .ttf comme src/main/assets/font.ttf ? ou dois-je assigner la police explicitement par code pour que le contrôle puisse la voir ?

3 votes

@kalehv : "ou dois-je assigner la police explicitement par code au contrôle pour la voir ?" -- Oh, absolument. Vous devrez appeler setTypeface() sur tous les TextView (et d'autres qui héritent de TextView ) que vous souhaitez utiliser cette police particulière.

17 votes

Cool. Cela a fonctionné comme un charme. J'aimerais qu'il y ait un moyen d'inclure Assets font (custom) dans Styles.xml plutôt que de l'utiliser dans le code. (Mon souhait peut sembler trop stupide pour être pris en compte, je suis un débutant donc excusez-moi si c'est le cas :-P)

1585voto

Prince Points 796

Laissez Android Studio le faire pour vous.

  1. Dans Android Studio ( 1.0 et plus ), cliquez avec le bouton droit de la souris sur le enter image description here et naviguez jusqu'au dossier Assets Folder .

enter image description here

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

enter image description here

Et voilà ! Il créera le assets dans le dossier main l'ensemble des sources cibles.

enter image description here

127voto

En regardant dans le 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).

8 votes

Mon fichier .iml ne contient pas cette information, à quelle partie du fichier dois-je l'ajouter ?

11 votes

Vous avez probablement deux fichiers .iml, vérifiez-les tous les deux.

1 votes

Vérifier app.iml et non <Nom-du-projet>.iml

90voto

Elenasys Points 23268

Sélectionnez l'option app et ensuite :

File > New > folder > assets Folder ,

enter image description here

l'emplacement par défaut est à l'intérieur de /main dossier

enter image description here

64voto

Love Points 1

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

L'emplacement du dossier Assets est le suivant App > src > Assets

Jetez un coup d'œil à l'image simple ci-dessous.

enter image description here

Nota: Pour créer un dossier d'actifs, il suffit de cliquer sur Projet => Clic droit => Sélectionner Nouveau => Dossier => Actifs. Le dossier Assets sera créé.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X