Dans Android Studio, lorsque vous créez un nouveau projet à partir de «Démarrer un nouveau projet Android Studio», la liste des modèles s'affiche. J'utilise souvent ʻEmpty Activity`, mais je suis reconnaissant que les modèles soient utiles depuis le début, mais honnêtement, Nanikore? Comme il y a de nombreux fichiers appelés, je l'ai vérifié. Bref, c'est un mémorandum.
Une question que je me suis demandé est si Java et Kotlin sont différents du modèle. J'ai donc créé la version Java comme «myapplication1» et la version Kotlin comme «myapplication2».
Au fait, «com.sirius.software» est le nom du package que j'utilise personnellement.
Le résultat de l'extension de tous les éléments créés par le modèle est le suivant. La version Java est à gauche et la version Kotlin est à droite.
Il semble qu'il n'y ait pas de grande différence à première vue,
Seule la version Kotlin avait un élément appelé generatedJava
depuis le début.
Lorsque j'ai construit la version Java, elle était affichée comme un élément, donc je suppose que la version Kotlin a été construite une fois au début.
app/manifests/AndroidManifest.xml
Contient des informations sur les applications Android. Est-ce un aperçu de l'application vue depuis le système Android? Il est susceptible d'être édité principalement lors de l'ajout / modification / suppression d'activités.
Il n'y a aucune différence dans Java / Kotlin. J'ai écrit un commentaire sur l'étiquette et chaque élément (je l'ai personnellement recherché).
AndroidManifest.xml
<?xml version="1.0" encoding="utf-8"?>
<!--
<manifest> AndroidManifest.élément racine xml
・ Xmlns:android =Indique qu'il s'agit d'un fichier xml pour Android
· Paquet=Nom du paquet
-->
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.sirius.software.myapplication1">
<!--
<application>Éléments de configuration à l'échelle de l'application
· Android:allowBackup =S'il faut sauvegarder les données de l'application sur GoogleDrive, etc.
· Android:icon =Spécifiez la ressource de l'icône de l'application
· Android:label =Spécifiez le nom d'affichage de l'application
· Android:roundIcon = Android 7.Spécifiez la ressource de l'icône ronde correspondant à 1 ou plus
· Android:supportRtl =Prend-il en charge les mises en page qui affichent des phrases de droite à gauche, comme en arabe?
· Android:theme =Spécifiez le thème par défaut de l'activité
-->
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:roundIcon="@mipmap/ic_launcher_round"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<!--
<activity>Éléments de réglage pour chaque activité
· Android:name =Nom de la ressource d'activité
-->
<activity android:name=".MainActivity">
<!--
<intent-filter>Spécifie le type d'intention implicite qui peut être traitée
Par exemple, cette application indique aux systèmes Android qu'elle peut passer des appels
Si vous souhaitez afficher Android.intent.action.Ajouter un appel
-->
<intent-filter>
<!-- .Indique que MainActivity s'affiche au démarrage de l'application-->
<action android:name="android.intent.action.MAIN" />
<!--Indique qu'il peut être démarré à partir de l'icône d'accueil-->
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
app/java/com.sirius.software.myapplication1/MainActivity.java
Code source de l'activité principale. Sans cela, rien ne sera affiché lorsque vous lancerez l'application. La barre d'action est l'endroit semblable à l'affichage du titre qui apparaît en haut de l'activité.
La version Java nécessite un point-virgule à la fin de la ligne.
MainActivity.java
//Déclaration de colis
package com.sirius.software.myapplication1;
//Obligatoire lors de la création d'une activité avec une barre d'actions
import android.support.v7.app.AppCompatActivity;
//Nécessaire pour que le système Android gère l'état d'activité
import android.os.Bundle;
//Point d'entrée (commencez ici)
public class MainActivity extends AppCompatActivity {
//gestionnaire d'événements onCreate
//Appelé au démarrage de l'activité
//L'annotation de remplacement réutilise onCreate existant
//Pratique car vous n'avez pas à écrire la magie de base de l'activité
@Override
protected void onCreate(Bundle savedInstanceState) {
//AppelerCréer une superclasse
//savedInstanceState stocke l'état de l'activité
super.onCreate(savedInstanceState);
//Lire et afficher le fichier de mise en page
setContentView(R.layout.activity_main);
}
}
app/java/com.sirius.software.myapplication2/MainActivity.kt
C'est l'activité principale de la version Kotlin. Aucun point-virgule n'est requis.
MainActivity.kt
package com.sirius.software.myapplication2
import android.support.v7.app.AppCompatActivity
import android.os.Bundle
//public est omis et le mot-clé extend est:Changé en
class MainActivity : AppCompatActivity() {
//Les annotations ont été omises et onCreate était rafraîchissant
// Bundle?Hatena indique que la valeur peut être Null (nullable)
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
}
}
app/generatedJava/com.sirius.software.myapplication*/BuildConfig
Si vous souhaitez séparer certains traitements entre la version Debug et la version Release Il semble que vous puissiez l'utiliser en ajoutant des constantes et des processus à BuildConfig. Je l'éditerai le moment venu.
app/generatedJava/com.sirius.software.myapplication*.test/BuildConfig
Cela signifie-t-il que le traitement peut être divisé au moment de la construction, même dans les tests unitaires? Je ne suis pas encore sûr, alors je vais le chercher à une date ultérieure.
app/java/com.sirius.software.myapplication*/ExampleInstrumentedTest.*
Un fichier d'exemple de test qui peut être exécuté sur la machine ou l'émulateur réel.
app/java/com.sirius.software.myapplication*/ExampleUnitTest.*
Un exemple de fichier de tests pouvant être exécutés sur Android Studio + Java Virtual Machine (JVM). Il ne semble pas y avoir de règle explicite sur la façon de gérer ces exemples de fichiers.
app/res/drawable/ic_launcher_background.xml
Définissez l'arrière-plan lorsque vous créez une icône adaptative.
app/res/drawable/ic_launcher_foreground.xml
Définissez le premier plan lorsque vous créez une icône adaptative. Les icônes adaptatives sont un mécanisme pour aligner (unifier) les formes des icônes d'application.
app/res/layout/activity_main.xml
La disposition de l'activité. Organisez les boutons et les vues affichés à l'écran.
activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<!--
<android.support.constraint.ConstraintLayout>Optimiser automatiquement la mise en page
・ Xmlns:android =Indique qu'il s'agit d'un fichier xml pour Android
・ Xmlns:app =Définir un espace de noms XML et rendre l'attribut d'application disponible
・ Xmlns:tools =Définir un espace de noms XML et rendre l'attribut tools disponible
· Android:layout_width =Réglage de la largeur (match)_parent:Affichage pour remplir la zone d'affichage)
· Android:layout_height =Réglage de la hauteur (match)_parent:Affichage pour remplir la zone d'affichage)
· Outils:context =Pour quelle activité la mise en page sera utilisée
-->
<android.support.constraint.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".MainActivity">
<!--
<TextView>Afficher l'étiquette
· Android:layout_width =Réglage de la largeur (wrap_content:S'il s'agit d'une chaîne de caractères, correspond à sa longueur)
· Android:layout_height =Réglage de la hauteur (wrap_content:S'il s'agit d'une chaîne de caractères, correspond à sa longueur)
· Android:text =Chaîne de caractères à afficher
・ Application:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent"
→ Spécifier comment s'organiser par rapport aux vues adjacentes dans la mise en page automatique
-->
<TextView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Hello World!"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintTop_toTopOf="parent" />
</android.support.constraint.ConstraintLayout>
app/res/mipmap/ic_launcher/ic_launcher.png
Il s'agit d'un fichier de ressources (image) de l'icône de l'application. Il semble que les tailles suivantes doivent être préparées pour l'image raster.
résolution | Taille de l'image |
---|---|
hdpi | 72x72 |
mdpi | 48x48 |
xhdpi | 96x96 |
xxhdpi | 144x144 |
xxxhdpi | 192x192 |
app/res/mipmap/ic_launcher/ic_launcher.xml
Fichier de définition d'icône adaptatif. Les fichiers suivants sont en cours de lecture.
ic_launcher_background.xml
ic_launcher_foreground.xml
app/res/mipmap/ic_launcher_round/ic_launcher_round.png
Il s'agit d'un fichier de ressources (image) de l'icône d'application ronde. La seule différence avec ʻic_launcher.png` est que la forme de l'icône est ronde.
app/res/mipmap/ic_launcher_round/ic_launcher_round.xml
Même contenu que ʻic_launcher.xml`. Ceci est également juste une icône ronde.
app/res/values/colors.xml
Définit le nom de la couleur et le code de couleur.
colors.xml
<?xml version="1.0" encoding="utf-8"?>
<resources>
<color name="colorPrimary">#008577</color> <!--Couleur d'arrière-plan de la barre d'action-->
<color name="colorPrimaryDark">#00574B</color> <!--Couleur d'arrière-plan de la barre d'état-->
<color name="colorAccent">#D81B60</color> <!--Couleur de base du contrôle-->
</resources>
app/res/values/strings.xml
Définit la chaîne utilisée dans l'application. Au départ, il n'y a que le nom d'affichage de l'application.
strings.xml
<resources>
<string name="app_name">My Application1</string> <!--Nom d'affichage de l'application-->
</resources>
app/res/values/styles.xml
Définissez des thèmes pour les activités et les vues de l'application.
Theme.AppCompat.Light.DarkActionBar
est le thème parent, et il semble que vous puissiez l'étendre indépendamment d'ici.
styles.xml
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
<!-- Customize your theme here. -->
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
</style>
</resources>
Gradle est utilisé pour créer des applications. Ceux qui souhaitent utiliser des outils de développement tels que la liaison de données et ceux qui souhaitent personnaliser diverses choses semblent modifier ici. Pour le moment, je ne pense pas avoir la possibilité de le modifier à moins qu'il n'y ait quelque chose de spécial, alors je viens de vérifier le plan pour le moment.
Gradle Scripts/build.gradle
Un fichier qui définit les procédures de construction dans le langage Groovy.
Gradle Scripts/gradle-wrapper.properties
Le fichier de configuration nécessaire pour exécuter la compilation sur Gradle.
Gradle Scripts/proguard-rules.pro
Fichier de définition pour empêcher l'ingénierie inverse de l'application.
Gradle Scripts/gradle.properties
Votre propre fichier de propriétés à utiliser avec Gradle.
Gradle Scripts/settings.gradle
Spécifie les projets à inclure lors de la construction. Il ne sera pas utilisé dans un seul projet.
Gradle Scripts/local.properties
Il est utilisé pour gérer les informations textuelles que vous ne souhaitez pas conserver dans le référentiel. Il semble que les paramètres spécifiques à l'environnement de développement correspondent à cela.
Les fichiers avec différents rôles sont préparés dès le début et on a l'impression qu'ils sont complètement épuisés. Si vous souhaitez simplement créer une application normalement, vous pouvez modifier les fichiers suivants ou ajouter les vôtres.
app/manifests/AndroidManifest.xml app/java/com.sirius.software.myapplication1/MainActivity.java app/java/com.sirius.software.myapplication2/MainActivity.kt app/res/drawable/ic_launcher_background.xml app/res/drawable/ic_launcher_foreground.xml app/res/layout/activity_main.xml app/res/mipmap/ic_launcher/ic_launcher.png app/res/mipmap/ic_launcher_round/ic_launcher_round.png app/res/values/colors.xml app/res/values/strings.xml app/res/values/styles.xml
Recommended Posts