|
@@ -2,7 +2,7 @@
|
2
|
2
|
|
3
|
3
|
**Vous allez devoir installer git, node et npm sur votre machine, puis cloner ce dépôt.**
|
4
|
4
|
|
5
|
|
-Tout est expliqué dans ce guide, si vous avez un problème ou une question, merci de me contacter par mail : app@amicale-insat.fr
|
|
5
|
+Tout est expliqué dans ce guide, si vous avez un problème ou une question, merci de me contacter par mail : [app@amicale-insat.fr](mailto:app@amicale-insat.fr)
|
6
|
6
|
|
7
|
7
|
Ce guide à été testé sur Linux (Ubuntu 18.04).
|
8
|
8
|
Si vous utilisez Windows, débrouillez-vous ou installez Linux j'ai la flemme de tester.
|
|
@@ -17,6 +17,7 @@ Si vous utilisez Windows, débrouillez-vous ou installez Linux j'ai la flemme de
|
17
|
17
|
* [Téléchargement des dépendances](#téléchargement-des-dépendances)
|
18
|
18
|
* [Lancement de l'appli](#lancement-de-lappli)
|
19
|
19
|
* [Tester sur un appareil](#tester-sur-un-appareil)
|
|
20
|
+* [Compiler une version release](#compiler-une-version-release)
|
20
|
21
|
|
21
|
22
|
## Installation de Git
|
22
|
23
|
|
|
@@ -42,7 +43,7 @@ sudo apt-get install -y nodejs
|
42
|
43
|
|
43
|
44
|
## Installation de React Native
|
44
|
45
|
|
45
|
|
-Merci de suivre les [instructions d'installation](https://reactnative.dev/docs/environment-setup) sur le site officiel.
|
|
46
|
+Merci de cliquer sur [ce lien](https://reactnative.dev/docs/environment-setup) et de suivre la procédure d'installation officielle sous l'onglet **React Native CLI Quickstart**, en sélectionnant ensuite votre plateforme.
|
46
|
47
|
|
47
|
48
|
## Téléchargement du dépôt
|
48
|
49
|
|
|
@@ -51,17 +52,34 @@ Clonez ce dépôt à l'aide de la commande suivante :
|
51
|
52
|
git clone https://git.etud.insa-toulouse.fr/vergnet/application-amicale.git
|
52
|
53
|
````
|
53
|
54
|
|
|
55
|
+Toute modification doit être réalisée sur la branche de développement (pas de commit direct sur master). Dev est ensuite fusionnée avec master une fois qu'une version stable est prête.
|
|
56
|
+Ainsi, en prenant la branche master a n'importe quel moment, il devrait être possible de compiler une version stable.
|
|
57
|
+
|
|
58
|
+Si vous voulez utiliser la branche de développement, réalisez la commande suivante :
|
|
59
|
+````shell script
|
|
60
|
+git checkout dev
|
|
61
|
+````
|
|
62
|
+Pour revenir sur la branche principale, effectuez la commande
|
|
63
|
+````shell script
|
|
64
|
+git checkout master
|
|
65
|
+````
|
|
66
|
+
|
54
|
67
|
## Téléchargement des dépendances
|
55
|
68
|
|
56
|
|
-Une fois le dépôt sur votre machine, ouvrez le terminal dans le dossier du dépôt cloné et tapez :
|
|
69
|
+Une fois le dépôt sur votre machine et git sur la branche de votre choix, ouvrez le terminal dans le dossier du dépôt cloné et tapez :
|
57
|
70
|
````shell script
|
58
|
71
|
npm install
|
59
|
72
|
````
|
60
|
73
|
Ceci installera toutes les dépendances listées dans le fichier _package.json_. Cette opération peut prendre quelques minutes et utilisera beaucoup d'espace disque (plus de 300Mo).
|
61
|
74
|
|
|
75
|
+En cas de problème d'installation (notamment lors du changement de branche), lancez la commande suivante pour tout réinstaller :
|
|
76
|
+````shell script
|
|
77
|
+./clear-node-cache.sh
|
|
78
|
+````
|
|
79
|
+
|
62
|
80
|
### Instructions pour iOS
|
63
|
81
|
|
64
|
|
-Pour iOS, en plus de la commande précédente, il faut aussi installer les dépendances iOS. Pour cela, allez dans le dossier `ios` et installez les pods :
|
|
82
|
+Pour iOS, en plus de la commande précédente, il faut aussi installer les dépendances iOS. Pour cela, allez dans le dossier `ios` et installez les pods grâce à la commande suivante :
|
65
|
83
|
```shell script
|
66
|
84
|
cd ios && pod install
|
67
|
85
|
```
|
|
@@ -83,12 +101,59 @@ npx react-native start
|
83
|
101
|
|
84
|
102
|
|
85
|
103
|
### Android
|
|
104
|
+
|
|
105
|
+**PRÉREQUIS** : Il est nécessaire de générer un fichier keystore.debug dans le dossier `android/app` pour qu'android puisse détecter que l'application est une version de debug. Pour cela, lancez la commande suivante :
|
|
106
|
+````shell script
|
|
107
|
+cd android/app && keytool -genkey -v -keystore debug.keystore -storepass android -alias androiddebugkey -keypass android -keyalg RSA -keysize 2048 -validity 10000
|
|
108
|
+````
|
|
109
|
+
|
|
110
|
+Ensuite, vous aurez besoin de créer un autre fichier dans le dossier `android/`, appelé gradle.properties avec le contenu suivant :
|
|
111
|
+
|
|
112
|
+<details>
|
|
113
|
+<summary>gradle.properties</summary>
|
|
114
|
+
|
|
115
|
+````properties
|
|
116
|
+# Project-wide Gradle settings.
|
|
117
|
+
|
|
118
|
+# IDE (e.g. Android Studio) users:
|
|
119
|
+# Gradle settings configured through the IDE *will override*
|
|
120
|
+# any settings specified in this file.
|
|
121
|
+
|
|
122
|
+# For more details on how to configure your build environment visit
|
|
123
|
+# http://www.gradle.org/docs/current/userguide/build_environment.html
|
|
124
|
+
|
|
125
|
+# Specifies the JVM arguments used for the daemon process.
|
|
126
|
+# The setting is particularly useful for tweaking memory settings.
|
|
127
|
+# Default value: -Xmx10248m -XX:MaxPermSize=256m
|
|
128
|
+# org.gradle.jvmargs=-Xmx2048m -XX:MaxPermSize=512m -XX:+HeapDumpOnOutOfMemoryError -Dfile.encoding=UTF-8
|
|
129
|
+
|
|
130
|
+# When configured, Gradle will run in incubating parallel mode.
|
|
131
|
+# This option should only be used with decoupled projects. More details, visit
|
|
132
|
+# http://www.gradle.org/docs/current/userguide/multi_project_builds.html#sec:decoupled_projects
|
|
133
|
+# org.gradle.parallel=true
|
|
134
|
+
|
|
135
|
+# AndroidX package structure to make it clearer which packages are bundled with the
|
|
136
|
+# Android operating system, and which are packaged with your app's APK
|
|
137
|
+# https://developer.android.com/topic/libraries/support-library/androidx-rn
|
|
138
|
+android.useAndroidX=true
|
|
139
|
+# Automatically convert third-party libraries to use AndroidX
|
|
140
|
+android.enableJetifier=true
|
|
141
|
+# Version of flipper SDK to use with React Native
|
|
142
|
+FLIPPER_VERSION=0.33.1
|
|
143
|
+````
|
|
144
|
+</details>
|
|
145
|
+
|
|
146
|
+Ce fichier n'est pas synchronisé sur git car il peut contenir des secrets relatifs à la clé de signature du build de release.
|
|
147
|
+
|
86
|
148
|
Dans la deuxième console, lancez la commande suivante :
|
87
|
149
|
````shell script
|
88
|
150
|
npx react-native run-android
|
89
|
151
|
````
|
90
|
152
|
|
91
|
153
|
### iOS
|
|
154
|
+
|
|
155
|
+**PRÉREQUIS** : Il faut être connecté avec le compte développeur de l'amicale sur Xcode pour pouvoir compiler !
|
|
156
|
+
|
92
|
157
|
Dans la deuxième console, lancez la commande suivante (valable que sur Mac) :
|
93
|
158
|
````shell script
|
94
|
159
|
npx react-native run-ios
|
|
@@ -123,3 +188,7 @@ En remplaçant `NOM DU SIMULATEUR` par le simulateur que vous voulez.
|
123
|
188
|
#### Appareil Physique
|
124
|
189
|
|
125
|
190
|
Aucune idée je suis pauvre je n'ai ni Mac ni iPhone.
|
|
191
|
+
|
|
192
|
+## Compiler une version release
|
|
193
|
+
|
|
194
|
+Merci de me contacter par mail pour toute information sur les release : [app@amicale-insat.fr](mailto:app@amicale-insat.fr)
|