From de869548e531f38625145929f26561613790d2f8 Mon Sep 17 00:00:00 2001 From: horville Date: Tue, 7 Mar 2023 16:14:57 +0100 Subject: [PATCH] Android + DEV 4.4 --- .../Authentification/Authentification.java | 61 ++++++ .../Authentification/StringComparator.java | 11 ++ .../TP08/Authentification/TreeComparator.java | 4 + DEV 3.2/TP08/Authentification/TreeMap.java | 96 +++++++++ DEV 3.2/TP08/Authentification/TreeNode.java | 105 ++++++++++ DEV 3.2/TP08/Tri/RealComparator.java | 11 ++ DEV 3.2/TP08/Tri/SearchTree.java | 23 +++ DEV 3.2/TP08/Tri/TreeComparator.java | 3 + DEV 3.2/TP08/Tri/TreeNode.java | 78 ++++++++ DEV 3.2/TP08/Tri/Tri.java | 16 ++ DEV 4.4/TP01/ex1.c | 117 +++++++++++ DEV 4.4/TP01/fichier.crypt | Bin 0 -> 38616 bytes DEV 4.4/TP01/key1.k | 1 + DEV 4.4/TP01/test.txt | 1 + DEV-4.5/TP01/Chat-Relative/.gitignore | 15 ++ DEV-4.5/TP01/Chat-Relative/.idea/.gitignore | 3 + DEV-4.5/TP01/Chat-Relative/.idea/.name | 1 + DEV-4.5/TP01/Chat-Relative/.idea/compiler.xml | 6 + DEV-4.5/TP01/Chat-Relative/.idea/gradle.xml | 20 ++ DEV-4.5/TP01/Chat-Relative/.idea/misc.xml | 16 ++ DEV-4.5/TP01/Chat-Relative/.idea/vcs.xml | 6 + DEV-4.5/TP01/Chat-Relative/app/.gitignore | 1 + DEV-4.5/TP01/Chat-Relative/app/build.gradle | 39 ++++ .../TP01/Chat-Relative/app/proguard-rules.pro | 21 ++ .../example/chat/ExampleInstrumentedTest.java | 26 +++ .../app/src/main/AndroidManifest.xml | 27 +++ .../java/com/example/chat/MainActivity.java | 14 ++ .../drawable-v24/ic_launcher_foreground.xml | 30 +++ .../res/drawable/ic_launcher_background.xml | 170 ++++++++++++++++ .../app/src/main/res/layout/activity_main.xml | 39 ++++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 + .../src/main/res/mipmap-hdpi/ic_launcher.webp | Bin 0 -> 1404 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 0 -> 2898 bytes .../src/main/res/mipmap-mdpi/ic_launcher.webp | Bin 0 -> 982 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 0 -> 1772 bytes .../main/res/mipmap-xhdpi/ic_launcher.webp | Bin 0 -> 1900 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 0 -> 3918 bytes .../main/res/mipmap-xxhdpi/ic_launcher.webp | Bin 0 -> 2884 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 0 -> 5914 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.webp | Bin 0 -> 3844 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 0 -> 7778 bytes .../app/src/main/res/values-night/themes.xml | 16 ++ .../app/src/main/res/values/colors.xml | 10 + .../app/src/main/res/values/strings.xml | 3 + .../app/src/main/res/values/themes.xml | 16 ++ .../app/src/main/res/xml/backup_rules.xml | 13 ++ .../main/res/xml/data_extraction_rules.xml | 19 ++ .../com/example/chat/ExampleUnitTest.java | 17 ++ DEV-4.5/TP01/Chat-Relative/build.gradle | 9 + DEV-4.5/TP01/Chat-Relative/gradle.properties | 21 ++ .../gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59203 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 + DEV-4.5/TP01/Chat-Relative/gradlew | 185 ++++++++++++++++++ DEV-4.5/TP01/Chat-Relative/gradlew.bat | 89 +++++++++ DEV-4.5/TP01/Chat-Relative/settings.gradle | 16 ++ DEV-4.5/TP01/Chat-Table/.gitignore | 15 ++ DEV-4.5/TP01/Chat-Table/.idea/.gitignore | 3 + DEV-4.5/TP01/Chat-Table/.idea/compiler.xml | 6 + DEV-4.5/TP01/Chat-Table/.idea/gradle.xml | 20 ++ DEV-4.5/TP01/Chat-Table/.idea/misc.xml | 16 ++ DEV-4.5/TP01/Chat-Table/.idea/vcs.xml | 6 + DEV-4.5/TP01/Chat-Table/app/.gitignore | 1 + DEV-4.5/TP01/Chat-Table/app/build.gradle | 39 ++++ .../TP01/Chat-Table/app/proguard-rules.pro | 21 ++ .../example/chat/ExampleInstrumentedTest.java | 26 +++ .../app/src/main/AndroidManifest.xml | 27 +++ .../java/com/example/chat/MainActivity.java | 14 ++ .../drawable-v24/ic_launcher_foreground.xml | 30 +++ .../res/drawable/ic_launcher_background.xml | 170 ++++++++++++++++ .../app/src/main/res/layout/activity_main.xml | 41 ++++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 + .../src/main/res/mipmap-hdpi/ic_launcher.webp | Bin 0 -> 1404 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 0 -> 2898 bytes .../src/main/res/mipmap-mdpi/ic_launcher.webp | Bin 0 -> 982 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 0 -> 1772 bytes .../main/res/mipmap-xhdpi/ic_launcher.webp | Bin 0 -> 1900 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 0 -> 3918 bytes .../main/res/mipmap-xxhdpi/ic_launcher.webp | Bin 0 -> 2884 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 0 -> 5914 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.webp | Bin 0 -> 3844 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 0 -> 7778 bytes .../app/src/main/res/values-night/themes.xml | 16 ++ .../app/src/main/res/values/colors.xml | 10 + .../app/src/main/res/values/strings.xml | 3 + .../app/src/main/res/values/themes.xml | 16 ++ .../app/src/main/res/xml/backup_rules.xml | 13 ++ .../main/res/xml/data_extraction_rules.xml | 19 ++ .../com/example/chat/ExampleUnitTest.java | 17 ++ DEV-4.5/TP01/Chat-Table/build.gradle | 9 + DEV-4.5/TP01/Chat-Table/gradle.properties | 21 ++ .../gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59203 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 + DEV-4.5/TP01/Chat-Table/gradlew | 185 ++++++++++++++++++ DEV-4.5/TP01/Chat-Table/gradlew.bat | 89 +++++++++ DEV-4.5/TP01/Chat-Table/settings.gradle | 16 ++ DEV-4.5/TP01/Chat/.gitignore | 15 ++ DEV-4.5/TP01/Chat/.idea/.gitignore | 3 + DEV-4.5/TP01/Chat/.idea/compiler.xml | 6 + DEV-4.5/TP01/Chat/.idea/gradle.xml | 20 ++ DEV-4.5/TP01/Chat/.idea/misc.xml | 16 ++ DEV-4.5/TP01/Chat/.idea/vcs.xml | 6 + DEV-4.5/TP01/Chat/app/.gitignore | 1 + DEV-4.5/TP01/Chat/app/build.gradle | 39 ++++ DEV-4.5/TP01/Chat/app/proguard-rules.pro | 21 ++ .../example/chat/ExampleInstrumentedTest.java | 26 +++ .../Chat/app/src/main/AndroidManifest.xml | 27 +++ .../java/com/example/chat/MainActivity.java | 14 ++ .../drawable-v24/ic_launcher_foreground.xml | 30 +++ .../res/drawable/ic_launcher_background.xml | 170 ++++++++++++++++ .../app/src/main/res/layout/activity_main.xml | 41 ++++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 + .../src/main/res/mipmap-hdpi/ic_launcher.webp | Bin 0 -> 1404 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 0 -> 2898 bytes .../src/main/res/mipmap-mdpi/ic_launcher.webp | Bin 0 -> 982 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 0 -> 1772 bytes .../main/res/mipmap-xhdpi/ic_launcher.webp | Bin 0 -> 1900 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 0 -> 3918 bytes .../main/res/mipmap-xxhdpi/ic_launcher.webp | Bin 0 -> 2884 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 0 -> 5914 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.webp | Bin 0 -> 3844 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 0 -> 7778 bytes .../app/src/main/res/values-night/themes.xml | 16 ++ .../Chat/app/src/main/res/values/colors.xml | 10 + .../Chat/app/src/main/res/values/strings.xml | 3 + .../Chat/app/src/main/res/values/themes.xml | 16 ++ .../app/src/main/res/xml/backup_rules.xml | 13 ++ .../main/res/xml/data_extraction_rules.xml | 19 ++ .../com/example/chat/ExampleUnitTest.java | 17 ++ DEV-4.5/TP01/Chat/build.gradle | 9 + DEV-4.5/TP01/Chat/gradle.properties | 21 ++ .../Chat/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59203 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 + DEV-4.5/TP01/Chat/gradlew | 185 ++++++++++++++++++ DEV-4.5/TP01/Chat/gradlew.bat | 89 +++++++++ DEV-4.5/TP01/Chat/settings.gradle | 16 ++ DEV-4.5/TP01/Croix/.gitignore | 15 ++ DEV-4.5/TP01/Croix/.idea/.gitignore | 3 + DEV-4.5/TP01/Croix/.idea/compiler.xml | 6 + DEV-4.5/TP01/Croix/.idea/gradle.xml | 19 ++ DEV-4.5/TP01/Croix/.idea/misc.xml | 16 ++ DEV-4.5/TP01/Croix/.idea/vcs.xml | 6 + DEV-4.5/TP01/Croix/app/.gitignore | 1 + DEV-4.5/TP01/Croix/app/build.gradle | 39 ++++ DEV-4.5/TP01/Croix/app/proguard-rules.pro | 21 ++ .../croix/ExampleInstrumentedTest.java | 26 +++ .../Croix/app/src/main/AndroidManifest.xml | 27 +++ .../java/com/example/croix/MainActivity.java | 14 ++ .../drawable-v24/ic_launcher_foreground.xml | 30 +++ .../res/drawable/ic_launcher_background.xml | 170 ++++++++++++++++ .../app/src/main/res/layout/activity_main.xml | 42 ++++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 + .../src/main/res/mipmap-hdpi/ic_launcher.webp | Bin 0 -> 1404 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 0 -> 2898 bytes .../src/main/res/mipmap-mdpi/ic_launcher.webp | Bin 0 -> 982 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 0 -> 1772 bytes .../main/res/mipmap-xhdpi/ic_launcher.webp | Bin 0 -> 1900 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 0 -> 3918 bytes .../main/res/mipmap-xxhdpi/ic_launcher.webp | Bin 0 -> 2884 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 0 -> 5914 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.webp | Bin 0 -> 3844 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 0 -> 7778 bytes .../app/src/main/res/values-night/themes.xml | 16 ++ .../Croix/app/src/main/res/values/colors.xml | 10 + .../Croix/app/src/main/res/values/strings.xml | 3 + .../Croix/app/src/main/res/values/themes.xml | 16 ++ .../app/src/main/res/xml/backup_rules.xml | 13 ++ .../main/res/xml/data_extraction_rules.xml | 19 ++ .../com/example/croix/ExampleUnitTest.java | 17 ++ DEV-4.5/TP01/Croix/build.gradle | 9 + DEV-4.5/TP01/Croix/gradle.properties | 21 ++ .../Croix/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59203 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 + DEV-4.5/TP01/Croix/gradlew | 185 ++++++++++++++++++ DEV-4.5/TP01/Croix/gradlew.bat | 89 +++++++++ DEV-4.5/TP01/Croix/settings.gradle | 16 ++ DEV-4.5/TP01/Pave/.gitignore | 15 ++ DEV-4.5/TP01/Pave/.idea/.gitignore | 3 + DEV-4.5/TP01/Pave/.idea/compiler.xml | 6 + DEV-4.5/TP01/Pave/.idea/gradle.xml | 20 ++ DEV-4.5/TP01/Pave/.idea/misc.xml | 16 ++ DEV-4.5/TP01/Pave/.idea/vcs.xml | 6 + DEV-4.5/TP01/Pave/app/.gitignore | 1 + DEV-4.5/TP01/Pave/app/build.gradle | 39 ++++ DEV-4.5/TP01/Pave/app/proguard-rules.pro | 21 ++ .../example/pave/ExampleInstrumentedTest.java | 26 +++ .../Pave/app/src/main/AndroidManifest.xml | 27 +++ .../java/com/example/pave/MainActivity.java | 14 ++ .../drawable-v24/ic_launcher_foreground.xml | 30 +++ .../res/drawable/ic_launcher_background.xml | 170 ++++++++++++++++ .../app/src/main/res/layout/activity_main.xml | 77 ++++++++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 + .../src/main/res/mipmap-hdpi/ic_launcher.webp | Bin 0 -> 1404 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 0 -> 2898 bytes .../src/main/res/mipmap-mdpi/ic_launcher.webp | Bin 0 -> 982 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 0 -> 1772 bytes .../main/res/mipmap-xhdpi/ic_launcher.webp | Bin 0 -> 1900 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 0 -> 3918 bytes .../main/res/mipmap-xxhdpi/ic_launcher.webp | Bin 0 -> 2884 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 0 -> 5914 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.webp | Bin 0 -> 3844 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 0 -> 7778 bytes .../app/src/main/res/values-night/themes.xml | 16 ++ .../Pave/app/src/main/res/values/colors.xml | 10 + .../Pave/app/src/main/res/values/strings.xml | 3 + .../Pave/app/src/main/res/values/themes.xml | 16 ++ .../app/src/main/res/xml/backup_rules.xml | 13 ++ .../main/res/xml/data_extraction_rules.xml | 19 ++ .../com/example/pave/ExampleUnitTest.java | 17 ++ DEV-4.5/TP01/Pave/build.gradle | 9 + DEV-4.5/TP01/Pave/gradle.properties | 21 ++ .../Pave/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59203 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 + DEV-4.5/TP01/Pave/gradlew | 185 ++++++++++++++++++ DEV-4.5/TP01/Pave/gradlew.bat | 89 +++++++++ DEV-4.5/TP01/Pave/settings.gradle | 16 ++ DEV-4.5/TP02/Choix/.gitignore | 15 ++ DEV-4.5/TP02/Choix/.idea/.gitignore | 3 + DEV-4.5/TP02/Choix/.idea/compiler.xml | 6 + DEV-4.5/TP02/Choix/.idea/gradle.xml | 20 ++ DEV-4.5/TP02/Choix/.idea/misc.xml | 17 ++ DEV-4.5/TP02/Choix/.idea/vcs.xml | 6 + DEV-4.5/TP02/Choix/app/.gitignore | 1 + DEV-4.5/TP02/Choix/app/build.gradle | 39 ++++ DEV-4.5/TP02/Choix/app/proguard-rules.pro | 21 ++ .../choix/ExampleInstrumentedTest.java | 26 +++ .../Choix/app/src/main/AndroidManifest.xml | 27 +++ .../main/java/com/example/choix/Choix.java | 99 ++++++++++ .../java/com/example/choix/MainActivity.java | 14 ++ .../drawable-v24/ic_launcher_foreground.xml | 30 +++ .../res/drawable/ic_launcher_background.xml | 170 ++++++++++++++++ .../app/src/main/res/layout/activity_main.xml | 42 ++++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 + .../src/main/res/mipmap-hdpi/ic_launcher.webp | Bin 0 -> 1404 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 0 -> 2898 bytes .../src/main/res/mipmap-mdpi/ic_launcher.webp | Bin 0 -> 982 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 0 -> 1772 bytes .../main/res/mipmap-xhdpi/ic_launcher.webp | Bin 0 -> 1900 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 0 -> 3918 bytes .../main/res/mipmap-xxhdpi/ic_launcher.webp | Bin 0 -> 2884 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 0 -> 5914 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.webp | Bin 0 -> 3844 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 0 -> 7778 bytes .../app/src/main/res/values-night/themes.xml | 16 ++ .../Choix/app/src/main/res/values/colors.xml | 10 + .../Choix/app/src/main/res/values/strings.xml | 3 + .../Choix/app/src/main/res/values/themes.xml | 16 ++ .../app/src/main/res/xml/backup_rules.xml | 13 ++ .../main/res/xml/data_extraction_rules.xml | 19 ++ .../com/example/choix/ExampleUnitTest.java | 17 ++ DEV-4.5/TP02/Choix/build.gradle | 9 + DEV-4.5/TP02/Choix/gradle.properties | 21 ++ .../Choix/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59203 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 + DEV-4.5/TP02/Choix/gradlew | 185 ++++++++++++++++++ DEV-4.5/TP02/Choix/gradlew.bat | 89 +++++++++ DEV-4.5/TP02/Choix/settings.gradle | 16 ++ DEV-4.5/TP02/Gribouillage/.gitignore | 15 ++ DEV-4.5/TP02/Gribouillage/.idea/.gitignore | 3 + DEV-4.5/TP02/Gribouillage/.idea/.name | 1 + DEV-4.5/TP02/Gribouillage/.idea/compiler.xml | 6 + DEV-4.5/TP02/Gribouillage/.idea/gradle.xml | 20 ++ DEV-4.5/TP02/Gribouillage/.idea/misc.xml | 18 ++ DEV-4.5/TP02/Gribouillage/.idea/vcs.xml | 6 + DEV-4.5/TP02/Gribouillage/app/.gitignore | 1 + DEV-4.5/TP02/Gribouillage/app/build.gradle | 39 ++++ .../TP02/Gribouillage/app/proguard-rules.pro | 21 ++ .../gribouillage/ExampleInstrumentedTest.java | 26 +++ .../app/src/main/AndroidManifest.xml | 27 +++ .../example/gribouillage/Gribouillage.java | 52 +++++ .../example/gribouillage/MainActivity.java | 14 ++ .../drawable-v24/ic_launcher_foreground.xml | 30 +++ .../app/src/main/res/drawable/cercles.png | Bin 0 -> 1917 bytes .../res/drawable/ic_launcher_background.xml | 170 ++++++++++++++++ .../app/src/main/res/layout/activity_main.xml | 14 ++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 + .../src/main/res/mipmap-hdpi/ic_launcher.webp | Bin 0 -> 1404 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 0 -> 2898 bytes .../src/main/res/mipmap-mdpi/ic_launcher.webp | Bin 0 -> 982 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 0 -> 1772 bytes .../main/res/mipmap-xhdpi/ic_launcher.webp | Bin 0 -> 1900 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 0 -> 3918 bytes .../main/res/mipmap-xxhdpi/ic_launcher.webp | Bin 0 -> 2884 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 0 -> 5914 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.webp | Bin 0 -> 3844 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 0 -> 7778 bytes .../app/src/main/res/values-night/themes.xml | 16 ++ .../app/src/main/res/values/colors.xml | 10 + .../app/src/main/res/values/strings.xml | 3 + .../app/src/main/res/values/themes.xml | 16 ++ .../app/src/main/res/xml/backup_rules.xml | 13 ++ .../main/res/xml/data_extraction_rules.xml | 19 ++ .../example/gribouillage/ExampleUnitTest.java | 17 ++ DEV-4.5/TP02/Gribouillage/build.gradle | 9 + DEV-4.5/TP02/Gribouillage/gradle.properties | 21 ++ .../gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59203 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 + DEV-4.5/TP02/Gribouillage/gradlew | 185 ++++++++++++++++++ DEV-4.5/TP02/Gribouillage/gradlew.bat | 89 +++++++++ DEV-4.5/TP02/Gribouillage/settings.gradle | 16 ++ DEV-4.5/TP03/Choix/.gitignore | 15 ++ DEV-4.5/TP03/Choix/.idea/.gitignore | 3 + DEV-4.5/TP03/Choix/.idea/compiler.xml | 6 + DEV-4.5/TP03/Choix/.idea/gradle.xml | 20 ++ DEV-4.5/TP03/Choix/.idea/misc.xml | 17 ++ DEV-4.5/TP03/Choix/.idea/vcs.xml | 6 + DEV-4.5/TP03/Choix/app/.gitignore | 1 + DEV-4.5/TP03/Choix/app/build.gradle | 39 ++++ DEV-4.5/TP03/Choix/app/proguard-rules.pro | 21 ++ .../choix/ExampleInstrumentedTest.java | 26 +++ .../Choix/app/src/main/AndroidManifest.xml | 27 +++ .../main/java/com/example/choix/Choix.java | 111 +++++++++++ .../java/com/example/choix/ClickListener.java | 17 ++ .../java/com/example/choix/MainActivity.java | 14 ++ .../drawable-v24/ic_launcher_foreground.xml | 30 +++ .../res/drawable/ic_launcher_background.xml | 170 ++++++++++++++++ .../app/src/main/res/layout/activity_main.xml | 42 ++++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 + .../src/main/res/mipmap-hdpi/ic_launcher.webp | Bin 0 -> 1404 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 0 -> 2898 bytes .../src/main/res/mipmap-mdpi/ic_launcher.webp | Bin 0 -> 982 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 0 -> 1772 bytes .../main/res/mipmap-xhdpi/ic_launcher.webp | Bin 0 -> 1900 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 0 -> 3918 bytes .../main/res/mipmap-xxhdpi/ic_launcher.webp | Bin 0 -> 2884 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 0 -> 5914 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.webp | Bin 0 -> 3844 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 0 -> 7778 bytes .../app/src/main/res/values-night/themes.xml | 16 ++ .../Choix/app/src/main/res/values/colors.xml | 10 + .../Choix/app/src/main/res/values/strings.xml | 3 + .../Choix/app/src/main/res/values/themes.xml | 16 ++ .../app/src/main/res/xml/backup_rules.xml | 13 ++ .../main/res/xml/data_extraction_rules.xml | 19 ++ .../com/example/choix/ExampleUnitTest.java | 17 ++ DEV-4.5/TP03/Choix/build.gradle | 9 + DEV-4.5/TP03/Choix/gradle.properties | 21 ++ .../Choix/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59203 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 + DEV-4.5/TP03/Choix/gradlew | 185 ++++++++++++++++++ DEV-4.5/TP03/Choix/gradlew.bat | 89 +++++++++ DEV-4.5/TP03/Choix/settings.gradle | 16 ++ DEV-4.5/TP03/Fleche/.gitignore | 15 ++ DEV-4.5/TP03/Fleche/.idea/.gitignore | 3 + DEV-4.5/TP03/Fleche/.idea/compiler.xml | 6 + DEV-4.5/TP03/Fleche/.idea/gradle.xml | 20 ++ DEV-4.5/TP03/Fleche/.idea/misc.xml | 17 ++ DEV-4.5/TP03/Fleche/.idea/vcs.xml | 6 + DEV-4.5/TP03/Fleche/app/.gitignore | 1 + DEV-4.5/TP03/Fleche/app/build.gradle | 39 ++++ DEV-4.5/TP03/Fleche/app/proguard-rules.pro | 21 ++ .../fleche/ExampleInstrumentedTest.java | 26 +++ .../Fleche/app/src/main/AndroidManifest.xml | 27 +++ .../example/fleche/FlecheClickListener.java | 27 +++ .../java/com/example/fleche/MaFleche.java | 62 ++++++ .../java/com/example/fleche/MainActivity.java | 16 ++ .../drawable-v24/ic_launcher_foreground.xml | 30 +++ .../src/main/res/drawable/fleche_droite.png | Bin 0 -> 705 bytes .../src/main/res/drawable/fleche_gauche.png | Bin 0 -> 768 bytes .../res/drawable/ic_launcher_background.xml | 170 ++++++++++++++++ .../app/src/main/res/layout/activity_main.xml | 30 +++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 + .../src/main/res/mipmap-hdpi/ic_launcher.webp | Bin 0 -> 1404 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 0 -> 2898 bytes .../src/main/res/mipmap-mdpi/ic_launcher.webp | Bin 0 -> 982 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 0 -> 1772 bytes .../main/res/mipmap-xhdpi/ic_launcher.webp | Bin 0 -> 1900 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 0 -> 3918 bytes .../main/res/mipmap-xxhdpi/ic_launcher.webp | Bin 0 -> 2884 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 0 -> 5914 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.webp | Bin 0 -> 3844 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 0 -> 7778 bytes .../app/src/main/res/values-night/themes.xml | 16 ++ .../Fleche/app/src/main/res/values/colors.xml | 10 + .../app/src/main/res/values/strings.xml | 3 + .../Fleche/app/src/main/res/values/themes.xml | 16 ++ .../app/src/main/res/xml/backup_rules.xml | 13 ++ .../main/res/xml/data_extraction_rules.xml | 19 ++ .../com/example/fleche/ExampleUnitTest.java | 17 ++ DEV-4.5/TP03/Fleche/build.gradle | 9 + DEV-4.5/TP03/Fleche/gradle.properties | 21 ++ .../Fleche/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59203 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 + DEV-4.5/TP03/Fleche/gradlew | 185 ++++++++++++++++++ DEV-4.5/TP03/Fleche/gradlew.bat | 89 +++++++++ DEV-4.5/TP03/Fleche/settings.gradle | 16 ++ DEV-4.5/TP03/Liste/.gitignore | 15 ++ DEV-4.5/TP03/Liste/.idea/.gitignore | 3 + DEV-4.5/TP03/Liste/.idea/.name | 1 + DEV-4.5/TP03/Liste/.idea/compiler.xml | 6 + DEV-4.5/TP03/Liste/.idea/gradle.xml | 20 ++ DEV-4.5/TP03/Liste/.idea/misc.xml | 17 ++ DEV-4.5/TP03/Liste/.idea/vcs.xml | 6 + DEV-4.5/TP03/Liste/app/.gitignore | 1 + DEV-4.5/TP03/Liste/app/build.gradle | 39 ++++ DEV-4.5/TP03/Liste/app/proguard-rules.pro | 21 ++ .../choix/ExampleInstrumentedTest.java | 26 +++ .../Liste/app/src/main/AndroidManifest.xml | 27 +++ .../main/java/com/example/choix/Choix.java | 111 +++++++++++ .../java/com/example/choix/ClickListener.java | 17 ++ .../java/com/example/choix/MainActivity.java | 19 ++ .../drawable-v24/ic_launcher_foreground.xml | 30 +++ .../res/drawable/ic_launcher_background.xml | 170 ++++++++++++++++ .../app/src/main/res/layout/activity_main.xml | 21 ++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 + .../src/main/res/mipmap-hdpi/ic_launcher.webp | Bin 0 -> 1404 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 0 -> 2898 bytes .../src/main/res/mipmap-mdpi/ic_launcher.webp | Bin 0 -> 982 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 0 -> 1772 bytes .../main/res/mipmap-xhdpi/ic_launcher.webp | Bin 0 -> 1900 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 0 -> 3918 bytes .../main/res/mipmap-xxhdpi/ic_launcher.webp | Bin 0 -> 2884 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 0 -> 5914 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.webp | Bin 0 -> 3844 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 0 -> 7778 bytes .../app/src/main/res/values-night/themes.xml | 16 ++ .../Liste/app/src/main/res/values/choix.xml | 9 + .../Liste/app/src/main/res/values/colors.xml | 10 + .../Liste/app/src/main/res/values/strings.xml | 3 + .../Liste/app/src/main/res/values/themes.xml | 16 ++ .../app/src/main/res/xml/backup_rules.xml | 13 ++ .../main/res/xml/data_extraction_rules.xml | 19 ++ .../com/example/choix/ExampleUnitTest.java | 17 ++ DEV-4.5/TP03/Liste/build.gradle | 9 + DEV-4.5/TP03/Liste/gradle.properties | 21 ++ .../Liste/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59203 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 + DEV-4.5/TP03/Liste/gradlew | 185 ++++++++++++++++++ DEV-4.5/TP03/Liste/gradlew.bat | 89 +++++++++ DEV-4.5/TP03/Liste/settings.gradle | 16 ++ DEV-4.5/TP03/Temperatures/.gitignore | 15 ++ DEV-4.5/TP03/Temperatures/.idea/.gitignore | 3 + DEV-4.5/TP03/Temperatures/.idea/compiler.xml | 6 + DEV-4.5/TP03/Temperatures/.idea/gradle.xml | 20 ++ DEV-4.5/TP03/Temperatures/.idea/misc.xml | 16 ++ DEV-4.5/TP03/Temperatures/.idea/vcs.xml | 6 + DEV-4.5/TP03/Temperatures/app/.gitignore | 1 + DEV-4.5/TP03/Temperatures/app/build.gradle | 39 ++++ .../TP03/Temperatures/app/proguard-rules.pro | 21 ++ .../temperature/ExampleInstrumentedTest.java | 26 +++ .../app/src/main/AndroidManifest.xml | 27 +++ .../projets/temperature/MainActivity.java | 27 +++ .../temperature/StackDesoverflower.java | 39 ++++ .../temperature/TempConversionListener.java | 58 ++++++ .../drawable-v24/ic_launcher_foreground.xml | 30 +++ .../res/drawable/ic_launcher_background.xml | 170 ++++++++++++++++ .../app/src/main/res/layout/activity_main.xml | 44 +++++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 + .../src/main/res/mipmap-hdpi/ic_launcher.webp | Bin 0 -> 1404 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 0 -> 2898 bytes .../src/main/res/mipmap-mdpi/ic_launcher.webp | Bin 0 -> 982 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 0 -> 1772 bytes .../main/res/mipmap-xhdpi/ic_launcher.webp | Bin 0 -> 1900 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 0 -> 3918 bytes .../main/res/mipmap-xxhdpi/ic_launcher.webp | Bin 0 -> 2884 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 0 -> 5914 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.webp | Bin 0 -> 3844 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 0 -> 7778 bytes .../app/src/main/res/values-night/themes.xml | 16 ++ .../app/src/main/res/values/colors.xml | 10 + .../app/src/main/res/values/strings.xml | 3 + .../app/src/main/res/values/themes.xml | 16 ++ .../app/src/main/res/xml/backup_rules.xml | 13 ++ .../main/res/xml/data_extraction_rules.xml | 19 ++ .../projets/temperature/ExampleUnitTest.java | 17 ++ DEV-4.5/TP03/Temperatures/build.gradle | 9 + DEV-4.5/TP03/Temperatures/gradle.properties | 21 ++ .../gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59203 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 + DEV-4.5/TP03/Temperatures/gradlew | 185 ++++++++++++++++++ DEV-4.5/TP03/Temperatures/gradlew.bat | 89 +++++++++ DEV-4.5/TP03/Temperatures/settings.gradle | 16 ++ DEV-4.5/TP04/Pois/.gitignore | 15 ++ DEV-4.5/TP04/Pois/.idea/.gitignore | 3 + DEV-4.5/TP04/Pois/.idea/compiler.xml | 6 + DEV-4.5/TP04/Pois/.idea/gradle.xml | 20 ++ DEV-4.5/TP04/Pois/.idea/misc.xml | 17 ++ DEV-4.5/TP04/Pois/.idea/vcs.xml | 6 + DEV-4.5/TP04/Pois/app/.gitignore | 1 + DEV-4.5/TP04/Pois/app/build.gradle | 39 ++++ DEV-4.5/TP04/Pois/app/proguard-rules.pro | 21 ++ .../example/pois/ExampleInstrumentedTest.java | 26 +++ .../Pois/app/src/main/AndroidManifest.xml | 27 +++ .../java/com/example/pois/MainActivity.java | 14 ++ .../main/java/com/example/pois/Pointer.java | 49 +++++ .../src/main/java/com/example/pois/Pois.java | 70 +++++++ .../java/com/example/pois/TouchListener.java | 36 ++++ .../drawable-v24/ic_launcher_foreground.xml | 30 +++ .../res/drawable/ic_launcher_background.xml | 170 ++++++++++++++++ .../app/src/main/res/layout/activity_main.xml | 13 ++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 + .../src/main/res/mipmap-hdpi/ic_launcher.webp | Bin 0 -> 1404 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 0 -> 2898 bytes .../src/main/res/mipmap-mdpi/ic_launcher.webp | Bin 0 -> 982 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 0 -> 1772 bytes .../main/res/mipmap-xhdpi/ic_launcher.webp | Bin 0 -> 1900 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 0 -> 3918 bytes .../main/res/mipmap-xxhdpi/ic_launcher.webp | Bin 0 -> 2884 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 0 -> 5914 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.webp | Bin 0 -> 3844 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 0 -> 7778 bytes .../app/src/main/res/values-night/themes.xml | 16 ++ .../Pois/app/src/main/res/values/colors.xml | 10 + .../Pois/app/src/main/res/values/strings.xml | 3 + .../Pois/app/src/main/res/values/themes.xml | 16 ++ .../app/src/main/res/xml/backup_rules.xml | 13 ++ .../main/res/xml/data_extraction_rules.xml | 19 ++ .../com/example/pois/ExampleUnitTest.java | 17 ++ DEV-4.5/TP04/Pois/build.gradle | 9 + DEV-4.5/TP04/Pois/gradle.properties | 21 ++ .../Pois/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59203 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 + DEV-4.5/TP04/Pois/gradlew | 185 ++++++++++++++++++ DEV-4.5/TP04/Pois/gradlew.bat | 89 +++++++++ DEV-4.5/TP04/Pois/settings.gradle | 16 ++ DEV-4.5/TP04/grille/.gitignore | 15 ++ DEV-4.5/TP04/grille/.idea/.gitignore | 3 + DEV-4.5/TP04/grille/.idea/compiler.xml | 6 + DEV-4.5/TP04/grille/.idea/gradle.xml | 19 ++ DEV-4.5/TP04/grille/.idea/misc.xml | 16 ++ DEV-4.5/TP04/grille/.idea/vcs.xml | 6 + DEV-4.5/TP04/grille/app/.gitignore | 1 + DEV-4.5/TP04/grille/app/build.gradle | 38 ++++ DEV-4.5/TP04/grille/app/proguard-rules.pro | 21 ++ .../grille/ExampleInstrumentedTest.java | 26 +++ .../grille/app/src/main/AndroidManifest.xml | 27 +++ .../java/com/example/grille/EwaListener.java | 42 ++++ .../java/com/example/grille/MainActivity.java | 22 +++ .../drawable-v24/ic_launcher_foreground.xml | 30 +++ .../res/drawable/ic_launcher_background.xml | 170 ++++++++++++++++ .../app/src/main/res/layout/activity_main.xml | 69 +++++++ .../res/mipmap-anydpi-v26/ic_launcher.xml | 5 + .../mipmap-anydpi-v26/ic_launcher_round.xml | 5 + .../src/main/res/mipmap-hdpi/ic_launcher.webp | Bin 0 -> 1404 bytes .../res/mipmap-hdpi/ic_launcher_round.webp | Bin 0 -> 2898 bytes .../src/main/res/mipmap-mdpi/ic_launcher.webp | Bin 0 -> 982 bytes .../res/mipmap-mdpi/ic_launcher_round.webp | Bin 0 -> 1772 bytes .../main/res/mipmap-xhdpi/ic_launcher.webp | Bin 0 -> 1900 bytes .../res/mipmap-xhdpi/ic_launcher_round.webp | Bin 0 -> 3918 bytes .../main/res/mipmap-xxhdpi/ic_launcher.webp | Bin 0 -> 2884 bytes .../res/mipmap-xxhdpi/ic_launcher_round.webp | Bin 0 -> 5914 bytes .../main/res/mipmap-xxxhdpi/ic_launcher.webp | Bin 0 -> 3844 bytes .../res/mipmap-xxxhdpi/ic_launcher_round.webp | Bin 0 -> 7778 bytes .../app/src/main/res/values-night/themes.xml | 16 ++ .../grille/app/src/main/res/values/colors.xml | 10 + .../app/src/main/res/values/strings.xml | 3 + .../grille/app/src/main/res/values/themes.xml | 16 ++ .../app/src/main/res/xml/backup_rules.xml | 13 ++ .../main/res/xml/data_extraction_rules.xml | 19 ++ .../com/example/grille/ExampleUnitTest.java | 17 ++ DEV-4.5/TP04/grille/build.gradle | 9 + DEV-4.5/TP04/grille/gradle.properties | 21 ++ .../grille/gradle/wrapper/gradle-wrapper.jar | Bin 0 -> 59203 bytes .../gradle/wrapper/gradle-wrapper.properties | 6 + DEV-4.5/TP04/grille/gradlew | 185 ++++++++++++++++++ DEV-4.5/TP04/grille/gradlew.bat | 89 +++++++++ DEV-4.5/TP04/grille/settings.gradle | 16 ++ 568 files changed, 12588 insertions(+) create mode 100644 DEV 3.2/TP08/Authentification/Authentification.java create mode 100644 DEV 3.2/TP08/Authentification/StringComparator.java create mode 100644 DEV 3.2/TP08/Authentification/TreeComparator.java create mode 100644 DEV 3.2/TP08/Authentification/TreeMap.java create mode 100644 DEV 3.2/TP08/Authentification/TreeNode.java create mode 100644 DEV 3.2/TP08/Tri/RealComparator.java create mode 100644 DEV 3.2/TP08/Tri/SearchTree.java create mode 100644 DEV 3.2/TP08/Tri/TreeComparator.java create mode 100644 DEV 3.2/TP08/Tri/TreeNode.java create mode 100644 DEV 3.2/TP08/Tri/Tri.java create mode 100644 DEV 4.4/TP01/ex1.c create mode 100644 DEV 4.4/TP01/fichier.crypt create mode 100644 DEV 4.4/TP01/key1.k create mode 100644 DEV 4.4/TP01/test.txt create mode 100644 DEV-4.5/TP01/Chat-Relative/.gitignore create mode 100644 DEV-4.5/TP01/Chat-Relative/.idea/.gitignore create mode 100644 DEV-4.5/TP01/Chat-Relative/.idea/.name create mode 100644 DEV-4.5/TP01/Chat-Relative/.idea/compiler.xml create mode 100644 DEV-4.5/TP01/Chat-Relative/.idea/gradle.xml create mode 100644 DEV-4.5/TP01/Chat-Relative/.idea/misc.xml create mode 100644 DEV-4.5/TP01/Chat-Relative/.idea/vcs.xml create mode 100644 DEV-4.5/TP01/Chat-Relative/app/.gitignore create mode 100644 DEV-4.5/TP01/Chat-Relative/app/build.gradle create mode 100644 DEV-4.5/TP01/Chat-Relative/app/proguard-rules.pro create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/androidTest/java/com/example/chat/ExampleInstrumentedTest.java create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/AndroidManifest.xml create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/java/com/example/chat/MainActivity.java create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/layout/activity_main.xml create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/mipmap-hdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/mipmap-mdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/mipmap-xhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/values-night/themes.xml create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/values/colors.xml create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/values/strings.xml create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/values/themes.xml create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/xml/backup_rules.xml create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/main/res/xml/data_extraction_rules.xml create mode 100644 DEV-4.5/TP01/Chat-Relative/app/src/test/java/com/example/chat/ExampleUnitTest.java create mode 100644 DEV-4.5/TP01/Chat-Relative/build.gradle create mode 100644 DEV-4.5/TP01/Chat-Relative/gradle.properties create mode 100644 DEV-4.5/TP01/Chat-Relative/gradle/wrapper/gradle-wrapper.jar create mode 100644 DEV-4.5/TP01/Chat-Relative/gradle/wrapper/gradle-wrapper.properties create mode 100755 DEV-4.5/TP01/Chat-Relative/gradlew create mode 100644 DEV-4.5/TP01/Chat-Relative/gradlew.bat create mode 100644 DEV-4.5/TP01/Chat-Relative/settings.gradle create mode 100644 DEV-4.5/TP01/Chat-Table/.gitignore create mode 100644 DEV-4.5/TP01/Chat-Table/.idea/.gitignore create mode 100644 DEV-4.5/TP01/Chat-Table/.idea/compiler.xml create mode 100644 DEV-4.5/TP01/Chat-Table/.idea/gradle.xml create mode 100644 DEV-4.5/TP01/Chat-Table/.idea/misc.xml create mode 100644 DEV-4.5/TP01/Chat-Table/.idea/vcs.xml create mode 100644 DEV-4.5/TP01/Chat-Table/app/.gitignore create mode 100644 DEV-4.5/TP01/Chat-Table/app/build.gradle create mode 100644 DEV-4.5/TP01/Chat-Table/app/proguard-rules.pro create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/androidTest/java/com/example/chat/ExampleInstrumentedTest.java create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/AndroidManifest.xml create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/java/com/example/chat/MainActivity.java create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/layout/activity_main.xml create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/mipmap-hdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/mipmap-mdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/mipmap-xhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/values-night/themes.xml create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/values/colors.xml create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/values/strings.xml create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/values/themes.xml create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/xml/backup_rules.xml create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/main/res/xml/data_extraction_rules.xml create mode 100644 DEV-4.5/TP01/Chat-Table/app/src/test/java/com/example/chat/ExampleUnitTest.java create mode 100644 DEV-4.5/TP01/Chat-Table/build.gradle create mode 100644 DEV-4.5/TP01/Chat-Table/gradle.properties create mode 100644 DEV-4.5/TP01/Chat-Table/gradle/wrapper/gradle-wrapper.jar create mode 100644 DEV-4.5/TP01/Chat-Table/gradle/wrapper/gradle-wrapper.properties create mode 100755 DEV-4.5/TP01/Chat-Table/gradlew create mode 100644 DEV-4.5/TP01/Chat-Table/gradlew.bat create mode 100644 DEV-4.5/TP01/Chat-Table/settings.gradle create mode 100644 DEV-4.5/TP01/Chat/.gitignore create mode 100644 DEV-4.5/TP01/Chat/.idea/.gitignore create mode 100644 DEV-4.5/TP01/Chat/.idea/compiler.xml create mode 100644 DEV-4.5/TP01/Chat/.idea/gradle.xml create mode 100644 DEV-4.5/TP01/Chat/.idea/misc.xml create mode 100644 DEV-4.5/TP01/Chat/.idea/vcs.xml create mode 100644 DEV-4.5/TP01/Chat/app/.gitignore create mode 100644 DEV-4.5/TP01/Chat/app/build.gradle create mode 100644 DEV-4.5/TP01/Chat/app/proguard-rules.pro create mode 100644 DEV-4.5/TP01/Chat/app/src/androidTest/java/com/example/chat/ExampleInstrumentedTest.java create mode 100644 DEV-4.5/TP01/Chat/app/src/main/AndroidManifest.xml create mode 100644 DEV-4.5/TP01/Chat/app/src/main/java/com/example/chat/MainActivity.java create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/layout/activity_main.xml create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/mipmap-hdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/mipmap-mdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/mipmap-xhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/values-night/themes.xml create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/values/colors.xml create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/values/strings.xml create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/values/themes.xml create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/xml/backup_rules.xml create mode 100644 DEV-4.5/TP01/Chat/app/src/main/res/xml/data_extraction_rules.xml create mode 100644 DEV-4.5/TP01/Chat/app/src/test/java/com/example/chat/ExampleUnitTest.java create mode 100644 DEV-4.5/TP01/Chat/build.gradle create mode 100644 DEV-4.5/TP01/Chat/gradle.properties create mode 100644 DEV-4.5/TP01/Chat/gradle/wrapper/gradle-wrapper.jar create mode 100644 DEV-4.5/TP01/Chat/gradle/wrapper/gradle-wrapper.properties create mode 100755 DEV-4.5/TP01/Chat/gradlew create mode 100644 DEV-4.5/TP01/Chat/gradlew.bat create mode 100644 DEV-4.5/TP01/Chat/settings.gradle create mode 100644 DEV-4.5/TP01/Croix/.gitignore create mode 100644 DEV-4.5/TP01/Croix/.idea/.gitignore create mode 100644 DEV-4.5/TP01/Croix/.idea/compiler.xml create mode 100644 DEV-4.5/TP01/Croix/.idea/gradle.xml create mode 100644 DEV-4.5/TP01/Croix/.idea/misc.xml create mode 100644 DEV-4.5/TP01/Croix/.idea/vcs.xml create mode 100644 DEV-4.5/TP01/Croix/app/.gitignore create mode 100644 DEV-4.5/TP01/Croix/app/build.gradle create mode 100644 DEV-4.5/TP01/Croix/app/proguard-rules.pro create mode 100644 DEV-4.5/TP01/Croix/app/src/androidTest/java/com/example/croix/ExampleInstrumentedTest.java create mode 100644 DEV-4.5/TP01/Croix/app/src/main/AndroidManifest.xml create mode 100644 DEV-4.5/TP01/Croix/app/src/main/java/com/example/croix/MainActivity.java create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/layout/activity_main.xml create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/mipmap-hdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/mipmap-mdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/mipmap-xhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/values-night/themes.xml create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/values/colors.xml create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/values/strings.xml create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/values/themes.xml create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/xml/backup_rules.xml create mode 100644 DEV-4.5/TP01/Croix/app/src/main/res/xml/data_extraction_rules.xml create mode 100644 DEV-4.5/TP01/Croix/app/src/test/java/com/example/croix/ExampleUnitTest.java create mode 100644 DEV-4.5/TP01/Croix/build.gradle create mode 100644 DEV-4.5/TP01/Croix/gradle.properties create mode 100644 DEV-4.5/TP01/Croix/gradle/wrapper/gradle-wrapper.jar create mode 100644 DEV-4.5/TP01/Croix/gradle/wrapper/gradle-wrapper.properties create mode 100755 DEV-4.5/TP01/Croix/gradlew create mode 100644 DEV-4.5/TP01/Croix/gradlew.bat create mode 100644 DEV-4.5/TP01/Croix/settings.gradle create mode 100644 DEV-4.5/TP01/Pave/.gitignore create mode 100644 DEV-4.5/TP01/Pave/.idea/.gitignore create mode 100644 DEV-4.5/TP01/Pave/.idea/compiler.xml create mode 100644 DEV-4.5/TP01/Pave/.idea/gradle.xml create mode 100644 DEV-4.5/TP01/Pave/.idea/misc.xml create mode 100644 DEV-4.5/TP01/Pave/.idea/vcs.xml create mode 100644 DEV-4.5/TP01/Pave/app/.gitignore create mode 100644 DEV-4.5/TP01/Pave/app/build.gradle create mode 100644 DEV-4.5/TP01/Pave/app/proguard-rules.pro create mode 100644 DEV-4.5/TP01/Pave/app/src/androidTest/java/com/example/pave/ExampleInstrumentedTest.java create mode 100644 DEV-4.5/TP01/Pave/app/src/main/AndroidManifest.xml create mode 100644 DEV-4.5/TP01/Pave/app/src/main/java/com/example/pave/MainActivity.java create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/layout/activity_main.xml create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/mipmap-hdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/mipmap-mdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/mipmap-xhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/values-night/themes.xml create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/values/colors.xml create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/values/strings.xml create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/values/themes.xml create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/xml/backup_rules.xml create mode 100644 DEV-4.5/TP01/Pave/app/src/main/res/xml/data_extraction_rules.xml create mode 100644 DEV-4.5/TP01/Pave/app/src/test/java/com/example/pave/ExampleUnitTest.java create mode 100644 DEV-4.5/TP01/Pave/build.gradle create mode 100644 DEV-4.5/TP01/Pave/gradle.properties create mode 100644 DEV-4.5/TP01/Pave/gradle/wrapper/gradle-wrapper.jar create mode 100644 DEV-4.5/TP01/Pave/gradle/wrapper/gradle-wrapper.properties create mode 100755 DEV-4.5/TP01/Pave/gradlew create mode 100644 DEV-4.5/TP01/Pave/gradlew.bat create mode 100644 DEV-4.5/TP01/Pave/settings.gradle create mode 100644 DEV-4.5/TP02/Choix/.gitignore create mode 100644 DEV-4.5/TP02/Choix/.idea/.gitignore create mode 100644 DEV-4.5/TP02/Choix/.idea/compiler.xml create mode 100644 DEV-4.5/TP02/Choix/.idea/gradle.xml create mode 100644 DEV-4.5/TP02/Choix/.idea/misc.xml create mode 100644 DEV-4.5/TP02/Choix/.idea/vcs.xml create mode 100644 DEV-4.5/TP02/Choix/app/.gitignore create mode 100644 DEV-4.5/TP02/Choix/app/build.gradle create mode 100644 DEV-4.5/TP02/Choix/app/proguard-rules.pro create mode 100644 DEV-4.5/TP02/Choix/app/src/androidTest/java/com/example/choix/ExampleInstrumentedTest.java create mode 100644 DEV-4.5/TP02/Choix/app/src/main/AndroidManifest.xml create mode 100644 DEV-4.5/TP02/Choix/app/src/main/java/com/example/choix/Choix.java create mode 100644 DEV-4.5/TP02/Choix/app/src/main/java/com/example/choix/MainActivity.java create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/layout/activity_main.xml create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/mipmap-hdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/mipmap-mdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/mipmap-xhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/values-night/themes.xml create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/values/colors.xml create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/values/strings.xml create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/values/themes.xml create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/xml/backup_rules.xml create mode 100644 DEV-4.5/TP02/Choix/app/src/main/res/xml/data_extraction_rules.xml create mode 100644 DEV-4.5/TP02/Choix/app/src/test/java/com/example/choix/ExampleUnitTest.java create mode 100644 DEV-4.5/TP02/Choix/build.gradle create mode 100644 DEV-4.5/TP02/Choix/gradle.properties create mode 100644 DEV-4.5/TP02/Choix/gradle/wrapper/gradle-wrapper.jar create mode 100644 DEV-4.5/TP02/Choix/gradle/wrapper/gradle-wrapper.properties create mode 100755 DEV-4.5/TP02/Choix/gradlew create mode 100644 DEV-4.5/TP02/Choix/gradlew.bat create mode 100644 DEV-4.5/TP02/Choix/settings.gradle create mode 100644 DEV-4.5/TP02/Gribouillage/.gitignore create mode 100644 DEV-4.5/TP02/Gribouillage/.idea/.gitignore create mode 100644 DEV-4.5/TP02/Gribouillage/.idea/.name create mode 100644 DEV-4.5/TP02/Gribouillage/.idea/compiler.xml create mode 100644 DEV-4.5/TP02/Gribouillage/.idea/gradle.xml create mode 100644 DEV-4.5/TP02/Gribouillage/.idea/misc.xml create mode 100644 DEV-4.5/TP02/Gribouillage/.idea/vcs.xml create mode 100644 DEV-4.5/TP02/Gribouillage/app/.gitignore create mode 100644 DEV-4.5/TP02/Gribouillage/app/build.gradle create mode 100644 DEV-4.5/TP02/Gribouillage/app/proguard-rules.pro create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/androidTest/java/com/example/gribouillage/ExampleInstrumentedTest.java create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/AndroidManifest.xml create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/java/com/example/gribouillage/Gribouillage.java create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/java/com/example/gribouillage/MainActivity.java create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/drawable/cercles.png create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/layout/activity_main.xml create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/mipmap-hdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/mipmap-mdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/mipmap-xhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/values-night/themes.xml create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/values/colors.xml create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/values/strings.xml create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/values/themes.xml create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/xml/backup_rules.xml create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/main/res/xml/data_extraction_rules.xml create mode 100644 DEV-4.5/TP02/Gribouillage/app/src/test/java/com/example/gribouillage/ExampleUnitTest.java create mode 100644 DEV-4.5/TP02/Gribouillage/build.gradle create mode 100644 DEV-4.5/TP02/Gribouillage/gradle.properties create mode 100644 DEV-4.5/TP02/Gribouillage/gradle/wrapper/gradle-wrapper.jar create mode 100644 DEV-4.5/TP02/Gribouillage/gradle/wrapper/gradle-wrapper.properties create mode 100755 DEV-4.5/TP02/Gribouillage/gradlew create mode 100644 DEV-4.5/TP02/Gribouillage/gradlew.bat create mode 100644 DEV-4.5/TP02/Gribouillage/settings.gradle create mode 100644 DEV-4.5/TP03/Choix/.gitignore create mode 100644 DEV-4.5/TP03/Choix/.idea/.gitignore create mode 100644 DEV-4.5/TP03/Choix/.idea/compiler.xml create mode 100644 DEV-4.5/TP03/Choix/.idea/gradle.xml create mode 100644 DEV-4.5/TP03/Choix/.idea/misc.xml create mode 100644 DEV-4.5/TP03/Choix/.idea/vcs.xml create mode 100644 DEV-4.5/TP03/Choix/app/.gitignore create mode 100644 DEV-4.5/TP03/Choix/app/build.gradle create mode 100644 DEV-4.5/TP03/Choix/app/proguard-rules.pro create mode 100644 DEV-4.5/TP03/Choix/app/src/androidTest/java/com/example/choix/ExampleInstrumentedTest.java create mode 100644 DEV-4.5/TP03/Choix/app/src/main/AndroidManifest.xml create mode 100644 DEV-4.5/TP03/Choix/app/src/main/java/com/example/choix/Choix.java create mode 100644 DEV-4.5/TP03/Choix/app/src/main/java/com/example/choix/ClickListener.java create mode 100644 DEV-4.5/TP03/Choix/app/src/main/java/com/example/choix/MainActivity.java create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/layout/activity_main.xml create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/mipmap-hdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/mipmap-mdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/mipmap-xhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/values-night/themes.xml create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/values/colors.xml create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/values/strings.xml create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/values/themes.xml create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/xml/backup_rules.xml create mode 100644 DEV-4.5/TP03/Choix/app/src/main/res/xml/data_extraction_rules.xml create mode 100644 DEV-4.5/TP03/Choix/app/src/test/java/com/example/choix/ExampleUnitTest.java create mode 100644 DEV-4.5/TP03/Choix/build.gradle create mode 100644 DEV-4.5/TP03/Choix/gradle.properties create mode 100644 DEV-4.5/TP03/Choix/gradle/wrapper/gradle-wrapper.jar create mode 100644 DEV-4.5/TP03/Choix/gradle/wrapper/gradle-wrapper.properties create mode 100755 DEV-4.5/TP03/Choix/gradlew create mode 100644 DEV-4.5/TP03/Choix/gradlew.bat create mode 100644 DEV-4.5/TP03/Choix/settings.gradle create mode 100644 DEV-4.5/TP03/Fleche/.gitignore create mode 100644 DEV-4.5/TP03/Fleche/.idea/.gitignore create mode 100644 DEV-4.5/TP03/Fleche/.idea/compiler.xml create mode 100644 DEV-4.5/TP03/Fleche/.idea/gradle.xml create mode 100644 DEV-4.5/TP03/Fleche/.idea/misc.xml create mode 100644 DEV-4.5/TP03/Fleche/.idea/vcs.xml create mode 100644 DEV-4.5/TP03/Fleche/app/.gitignore create mode 100644 DEV-4.5/TP03/Fleche/app/build.gradle create mode 100644 DEV-4.5/TP03/Fleche/app/proguard-rules.pro create mode 100644 DEV-4.5/TP03/Fleche/app/src/androidTest/java/com/example/fleche/ExampleInstrumentedTest.java create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/AndroidManifest.xml create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/java/com/example/fleche/FlecheClickListener.java create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/java/com/example/fleche/MaFleche.java create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/java/com/example/fleche/MainActivity.java create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/drawable/fleche_droite.png create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/drawable/fleche_gauche.png create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/layout/activity_main.xml create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/mipmap-hdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/mipmap-mdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/mipmap-xhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/values-night/themes.xml create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/values/colors.xml create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/values/strings.xml create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/values/themes.xml create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/xml/backup_rules.xml create mode 100644 DEV-4.5/TP03/Fleche/app/src/main/res/xml/data_extraction_rules.xml create mode 100644 DEV-4.5/TP03/Fleche/app/src/test/java/com/example/fleche/ExampleUnitTest.java create mode 100644 DEV-4.5/TP03/Fleche/build.gradle create mode 100644 DEV-4.5/TP03/Fleche/gradle.properties create mode 100644 DEV-4.5/TP03/Fleche/gradle/wrapper/gradle-wrapper.jar create mode 100644 DEV-4.5/TP03/Fleche/gradle/wrapper/gradle-wrapper.properties create mode 100755 DEV-4.5/TP03/Fleche/gradlew create mode 100644 DEV-4.5/TP03/Fleche/gradlew.bat create mode 100644 DEV-4.5/TP03/Fleche/settings.gradle create mode 100644 DEV-4.5/TP03/Liste/.gitignore create mode 100644 DEV-4.5/TP03/Liste/.idea/.gitignore create mode 100644 DEV-4.5/TP03/Liste/.idea/.name create mode 100644 DEV-4.5/TP03/Liste/.idea/compiler.xml create mode 100644 DEV-4.5/TP03/Liste/.idea/gradle.xml create mode 100644 DEV-4.5/TP03/Liste/.idea/misc.xml create mode 100644 DEV-4.5/TP03/Liste/.idea/vcs.xml create mode 100644 DEV-4.5/TP03/Liste/app/.gitignore create mode 100644 DEV-4.5/TP03/Liste/app/build.gradle create mode 100644 DEV-4.5/TP03/Liste/app/proguard-rules.pro create mode 100644 DEV-4.5/TP03/Liste/app/src/androidTest/java/com/example/choix/ExampleInstrumentedTest.java create mode 100644 DEV-4.5/TP03/Liste/app/src/main/AndroidManifest.xml create mode 100644 DEV-4.5/TP03/Liste/app/src/main/java/com/example/choix/Choix.java create mode 100644 DEV-4.5/TP03/Liste/app/src/main/java/com/example/choix/ClickListener.java create mode 100644 DEV-4.5/TP03/Liste/app/src/main/java/com/example/choix/MainActivity.java create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/layout/activity_main.xml create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/mipmap-hdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/mipmap-mdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/mipmap-xhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/values-night/themes.xml create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/values/choix.xml create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/values/colors.xml create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/values/strings.xml create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/values/themes.xml create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/xml/backup_rules.xml create mode 100644 DEV-4.5/TP03/Liste/app/src/main/res/xml/data_extraction_rules.xml create mode 100644 DEV-4.5/TP03/Liste/app/src/test/java/com/example/choix/ExampleUnitTest.java create mode 100644 DEV-4.5/TP03/Liste/build.gradle create mode 100644 DEV-4.5/TP03/Liste/gradle.properties create mode 100644 DEV-4.5/TP03/Liste/gradle/wrapper/gradle-wrapper.jar create mode 100644 DEV-4.5/TP03/Liste/gradle/wrapper/gradle-wrapper.properties create mode 100755 DEV-4.5/TP03/Liste/gradlew create mode 100644 DEV-4.5/TP03/Liste/gradlew.bat create mode 100644 DEV-4.5/TP03/Liste/settings.gradle create mode 100644 DEV-4.5/TP03/Temperatures/.gitignore create mode 100644 DEV-4.5/TP03/Temperatures/.idea/.gitignore create mode 100644 DEV-4.5/TP03/Temperatures/.idea/compiler.xml create mode 100644 DEV-4.5/TP03/Temperatures/.idea/gradle.xml create mode 100644 DEV-4.5/TP03/Temperatures/.idea/misc.xml create mode 100644 DEV-4.5/TP03/Temperatures/.idea/vcs.xml create mode 100644 DEV-4.5/TP03/Temperatures/app/.gitignore create mode 100644 DEV-4.5/TP03/Temperatures/app/build.gradle create mode 100644 DEV-4.5/TP03/Temperatures/app/proguard-rules.pro create mode 100644 DEV-4.5/TP03/Temperatures/app/src/androidTest/java/projets/temperature/ExampleInstrumentedTest.java create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/AndroidManifest.xml create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/java/projets/temperature/MainActivity.java create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/java/projets/temperature/StackDesoverflower.java create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/java/projets/temperature/TempConversionListener.java create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/layout/activity_main.xml create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/mipmap-hdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/mipmap-mdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/mipmap-xhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/values-night/themes.xml create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/values/colors.xml create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/values/strings.xml create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/values/themes.xml create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/xml/backup_rules.xml create mode 100644 DEV-4.5/TP03/Temperatures/app/src/main/res/xml/data_extraction_rules.xml create mode 100644 DEV-4.5/TP03/Temperatures/app/src/test/java/projets/temperature/ExampleUnitTest.java create mode 100644 DEV-4.5/TP03/Temperatures/build.gradle create mode 100644 DEV-4.5/TP03/Temperatures/gradle.properties create mode 100644 DEV-4.5/TP03/Temperatures/gradle/wrapper/gradle-wrapper.jar create mode 100644 DEV-4.5/TP03/Temperatures/gradle/wrapper/gradle-wrapper.properties create mode 100755 DEV-4.5/TP03/Temperatures/gradlew create mode 100644 DEV-4.5/TP03/Temperatures/gradlew.bat create mode 100644 DEV-4.5/TP03/Temperatures/settings.gradle create mode 100644 DEV-4.5/TP04/Pois/.gitignore create mode 100644 DEV-4.5/TP04/Pois/.idea/.gitignore create mode 100644 DEV-4.5/TP04/Pois/.idea/compiler.xml create mode 100644 DEV-4.5/TP04/Pois/.idea/gradle.xml create mode 100644 DEV-4.5/TP04/Pois/.idea/misc.xml create mode 100644 DEV-4.5/TP04/Pois/.idea/vcs.xml create mode 100644 DEV-4.5/TP04/Pois/app/.gitignore create mode 100644 DEV-4.5/TP04/Pois/app/build.gradle create mode 100644 DEV-4.5/TP04/Pois/app/proguard-rules.pro create mode 100644 DEV-4.5/TP04/Pois/app/src/androidTest/java/com/example/pois/ExampleInstrumentedTest.java create mode 100644 DEV-4.5/TP04/Pois/app/src/main/AndroidManifest.xml create mode 100644 DEV-4.5/TP04/Pois/app/src/main/java/com/example/pois/MainActivity.java create mode 100644 DEV-4.5/TP04/Pois/app/src/main/java/com/example/pois/Pointer.java create mode 100644 DEV-4.5/TP04/Pois/app/src/main/java/com/example/pois/Pois.java create mode 100644 DEV-4.5/TP04/Pois/app/src/main/java/com/example/pois/TouchListener.java create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/layout/activity_main.xml create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/mipmap-hdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/mipmap-mdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/mipmap-xhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/values-night/themes.xml create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/values/colors.xml create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/values/strings.xml create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/values/themes.xml create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/xml/backup_rules.xml create mode 100644 DEV-4.5/TP04/Pois/app/src/main/res/xml/data_extraction_rules.xml create mode 100644 DEV-4.5/TP04/Pois/app/src/test/java/com/example/pois/ExampleUnitTest.java create mode 100644 DEV-4.5/TP04/Pois/build.gradle create mode 100644 DEV-4.5/TP04/Pois/gradle.properties create mode 100644 DEV-4.5/TP04/Pois/gradle/wrapper/gradle-wrapper.jar create mode 100644 DEV-4.5/TP04/Pois/gradle/wrapper/gradle-wrapper.properties create mode 100755 DEV-4.5/TP04/Pois/gradlew create mode 100644 DEV-4.5/TP04/Pois/gradlew.bat create mode 100644 DEV-4.5/TP04/Pois/settings.gradle create mode 100644 DEV-4.5/TP04/grille/.gitignore create mode 100644 DEV-4.5/TP04/grille/.idea/.gitignore create mode 100644 DEV-4.5/TP04/grille/.idea/compiler.xml create mode 100644 DEV-4.5/TP04/grille/.idea/gradle.xml create mode 100644 DEV-4.5/TP04/grille/.idea/misc.xml create mode 100644 DEV-4.5/TP04/grille/.idea/vcs.xml create mode 100644 DEV-4.5/TP04/grille/app/.gitignore create mode 100644 DEV-4.5/TP04/grille/app/build.gradle create mode 100644 DEV-4.5/TP04/grille/app/proguard-rules.pro create mode 100644 DEV-4.5/TP04/grille/app/src/androidTest/java/com/example/grille/ExampleInstrumentedTest.java create mode 100644 DEV-4.5/TP04/grille/app/src/main/AndroidManifest.xml create mode 100644 DEV-4.5/TP04/grille/app/src/main/java/com/example/grille/EwaListener.java create mode 100644 DEV-4.5/TP04/grille/app/src/main/java/com/example/grille/MainActivity.java create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/drawable-v24/ic_launcher_foreground.xml create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/drawable/ic_launcher_background.xml create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/layout/activity_main.xml create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/mipmap-anydpi-v26/ic_launcher.xml create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/mipmap-anydpi-v26/ic_launcher_round.xml create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/mipmap-hdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/mipmap-hdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/mipmap-mdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/mipmap-mdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/mipmap-xhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/mipmap-xhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/mipmap-xxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/mipmap-xxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/mipmap-xxxhdpi/ic_launcher.webp create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/mipmap-xxxhdpi/ic_launcher_round.webp create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/values-night/themes.xml create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/values/colors.xml create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/values/strings.xml create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/values/themes.xml create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/xml/backup_rules.xml create mode 100644 DEV-4.5/TP04/grille/app/src/main/res/xml/data_extraction_rules.xml create mode 100644 DEV-4.5/TP04/grille/app/src/test/java/com/example/grille/ExampleUnitTest.java create mode 100644 DEV-4.5/TP04/grille/build.gradle create mode 100644 DEV-4.5/TP04/grille/gradle.properties create mode 100644 DEV-4.5/TP04/grille/gradle/wrapper/gradle-wrapper.jar create mode 100644 DEV-4.5/TP04/grille/gradle/wrapper/gradle-wrapper.properties create mode 100755 DEV-4.5/TP04/grille/gradlew create mode 100644 DEV-4.5/TP04/grille/gradlew.bat create mode 100644 DEV-4.5/TP04/grille/settings.gradle diff --git a/DEV 3.2/TP08/Authentification/Authentification.java b/DEV 3.2/TP08/Authentification/Authentification.java new file mode 100644 index 0000000..ed7550d --- /dev/null +++ b/DEV 3.2/TP08/Authentification/Authentification.java @@ -0,0 +1,61 @@ +import java.io.BufferedReader; +import java.io.IOException; +import java.io.InputStreamReader; +import java.util.HashMap; +import java.util.Map; +import java.util.TreeMap; + +public class Authentification { + public static void main(String[] args) { + Map loginMap = new TreeMap<>(); + + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + try { + while (true) { + String command = br.readLine(); + String[] cargs = command.split(" "); + + switch (cargs[0].toLowerCase()) { + case "add": + if (loginMap.containsKey(cargs[1])) { + System.err.println("Utilisateur \"" + cargs[1] + "\" déjà existant."); + } else { + loginMap.put(cargs[1], cargs[2]); + System.out.println("Utilisateur \"" + cargs[1] + "\" ajouté."); + } + break; + + case "auth": + if (loginMap.containsKey(cargs[1])) { + if (loginMap.get(cargs[1]).compareTo(cargs[2]) == 0) { + System.out.println("Utilisateur \"" + cargs[1] + "\" reconnu."); + } else { + System.err.println("Utilisateur \"" + cargs[1] + "\" non reconnu."); + } + } else { + System.err.println("Utilisateur \"" + cargs[1] + "\" non reconnu."); + } + break; + + case "del": + if (loginMap.containsKey(cargs[1])) { + loginMap.remove(cargs[1]); + System.out.println("Utilisateur \"" + cargs[1] + "\" retiré."); + } else { + System.err.println("Utilisateur \"" + cargs[1] + "\" non reconnu."); + } + break; + + case "quit": + System.out.println("Au revoir"); + return; + + default: + System.out.println("Commande inconnue"); + } + } + } catch (IOException e) { + System.err.println(e); + } + } +} diff --git a/DEV 3.2/TP08/Authentification/StringComparator.java b/DEV 3.2/TP08/Authentification/StringComparator.java new file mode 100644 index 0000000..b270b99 --- /dev/null +++ b/DEV 3.2/TP08/Authentification/StringComparator.java @@ -0,0 +1,11 @@ +public class StringComparator implements TreeComparator { + + @Override + public int compare(String a, String b) { + int comparing = a.compareTo(b); + + if (comparing == 0) return 0; + return comparing /= Math.abs(comparing); + } + +} diff --git a/DEV 3.2/TP08/Authentification/TreeComparator.java b/DEV 3.2/TP08/Authentification/TreeComparator.java new file mode 100644 index 0000000..9d08685 --- /dev/null +++ b/DEV 3.2/TP08/Authentification/TreeComparator.java @@ -0,0 +1,4 @@ + +public interface TreeComparator { + public int compare(T a, T b); +} diff --git a/DEV 3.2/TP08/Authentification/TreeMap.java b/DEV 3.2/TP08/Authentification/TreeMap.java new file mode 100644 index 0000000..95df077 --- /dev/null +++ b/DEV 3.2/TP08/Authentification/TreeMap.java @@ -0,0 +1,96 @@ +import java.util.Collection; +import java.util.Map; +import java.util.Set; + +public class TreeMap implements Map { + + private TreeNode root; + private TreeComparator comparator; + + public TreeMap() { + + } + + public TreeComparator getComparator() { + return comparator; + } + + public void setComparator(TreeComparator comparator) { + this.comparator = comparator; + } + + @Override + public void clear() { + root = null; + } + + @Override + public boolean containsKey(Object key) { + if (root == null) return false; + else return root.containsKey((K)key); + } + + @Override + public boolean containsValue(Object value) { + return false; + } + + @Override + public Set> entrySet() { + return null; + } + + @Override + public V get(Object key) { + if (root == null) return null; + return root.get((K)key); + } + + @Override + public boolean isEmpty() { + return root == null; + } + + @Override + public Set keySet() { + return null; + } + + @Override + public V put(K key, V value) { + if (root == null) { + root = new TreeNode(this, key, value); + return null; + } + + return root.put(key, value); + } + + @Override + public void putAll(Map m) { + + } + + @Override + public V remove(Object key) { + if (root == null) return null; + else if (comparator.compare(root.getKey(), (K)key) == 0) { + V value = root.getValue(); + root = null; + return value; + } else { + return root.remove((K)key); + } + } + + @Override + public int size() { + return 0; + } + + @Override + public Collection values() { + return null; + } + +} diff --git a/DEV 3.2/TP08/Authentification/TreeNode.java b/DEV 3.2/TP08/Authentification/TreeNode.java new file mode 100644 index 0000000..63355ba --- /dev/null +++ b/DEV 3.2/TP08/Authentification/TreeNode.java @@ -0,0 +1,105 @@ +public class TreeNode { + + private K key; + private V value; + + private TreeMap tree; + private TreeNode sub; + private TreeNode top; + + public TreeNode(TreeMap tree, K key, V value) { + this.key = key; + this.value = value; + } + + public K getKey() { + return key; + } + + public V getValue() { + return value; + } + + public V put(K key, V value) { + int comparison = tree.getComparator().compare(this.key, key); + + if (comparison == -1) { + if (sub == null) sub = new TreeNode(tree, key, value); + else sub.put(key, value); + return null; + } else if (comparison == 0) { + V oldValue = this.value; + this.value = value; + return oldValue; + } else { + if (top == null) top = new TreeNode(tree, key, value); + else top.put(key, value); + return null; + } + } + + public V get(K key) { + int comparison = tree.getComparator().compare(this.key, key); + + if (comparison == -1) { + if (sub == null) return null; + else return sub.get(key); + } else if (comparison == 0) { + return value; + } else { + if (top == null) return null; + else return top.get(key); + } + } + + public boolean containsKey(K key) { + int comparison = tree.getComparator().compare(this.key, key); + + if (comparison == -1) { + if (sub == null) return false; + else return sub.containsKey(key); + } else if (comparison == 0) { + return true; + } else { + if (top == null) return false; + else return top.containsKey(key); + } + } + + public TreeNode getSub() { + return sub; + } + + public TreeNode getTop() { + return top; + } + + public V remove(K key) { + int comparison = tree.getComparator().compare(this.key, key); + + if (comparison == -1) { + if (sub == null) return null; + else { + if (tree.getComparator().compare(key, sub.getKey()) == 0) { + V value = sub.getValue(); + sub = null; + + return value; + } else { + return sub.remove(key); + } + } + } else { + if (top == null) return null; + else { + if (tree.getComparator().compare(key, top.getKey()) == 0) { + V value = top.getValue(); + top = null; + return value; + } else { + return top.remove(key); + } + } + } + } +} diff --git a/DEV 3.2/TP08/Tri/RealComparator.java b/DEV 3.2/TP08/Tri/RealComparator.java new file mode 100644 index 0000000..3abff3b --- /dev/null +++ b/DEV 3.2/TP08/Tri/RealComparator.java @@ -0,0 +1,11 @@ +public class RealComparator implements TreeComparator { + + public RealComparator() {} + + @Override + public int compare(Float a, Float b) { + if (a > b) return 1; + else if (a < b) return -1; + else return 0; + } +} diff --git a/DEV 3.2/TP08/Tri/SearchTree.java b/DEV 3.2/TP08/Tri/SearchTree.java new file mode 100644 index 0000000..919f7f8 --- /dev/null +++ b/DEV 3.2/TP08/Tri/SearchTree.java @@ -0,0 +1,23 @@ +public class SearchTree { + + private TreeNode root; + private TreeComparator comparator; + + public SearchTree(TreeComparator comparator) { + this.comparator = comparator; + } + + public void add(T object) { + if (root != null) root.add(object); + else root = new TreeNode(this, object); + } + + public TreeComparator getComparator() { + return comparator; + } + + @Override + public String toString() { + return root.toString(); + } +} diff --git a/DEV 3.2/TP08/Tri/TreeComparator.java b/DEV 3.2/TP08/Tri/TreeComparator.java new file mode 100644 index 0000000..021b4c7 --- /dev/null +++ b/DEV 3.2/TP08/Tri/TreeComparator.java @@ -0,0 +1,3 @@ +public interface TreeComparator { + public int compare(T a, T b); +} diff --git a/DEV 3.2/TP08/Tri/TreeNode.java b/DEV 3.2/TP08/Tri/TreeNode.java new file mode 100644 index 0000000..912b893 --- /dev/null +++ b/DEV 3.2/TP08/Tri/TreeNode.java @@ -0,0 +1,78 @@ +public class TreeNode { + + private T value; + private TreeNode lesser; + private TreeNode greater; + private SearchTree parentTree; + + public TreeNode(SearchTree parentTree, T object) { + this.parentTree = parentTree; + this.value = object; + } + + public void add(T object) { + switch (parentTree.getComparator().compare(value, object)) { + case -1: + if (lesser != null) lesser.add(object); + else lesser = new TreeNode(parentTree, object); + break; + case 0: + throw new IllegalArgumentException("Value already in tree"); + case 1: + if (greater != null) greater.add(object); + else greater = new TreeNode(parentTree, object); + break; + } + } + + public void remove(T object) { + if (lesser.getValue().equals(object)) { + T a = lesser.getLesser().getValue(); + T b = lesser.getGreater().getValue(); + parentTree.add(a); + parentTree.add(b); + lesser = null; + } else if (greater.getValue().equals(object)) { + T a = greater.getLesser().getValue(); + T b = greater.getGreater().getValue(); + parentTree.add(a); + parentTree.add(b); + greater = null; + } else { + switch (parentTree.getComparator().compare(value, object)) { + case -1: + if (lesser != null) lesser.remove(object); + else return; + break; + case 0: + throw new IllegalStateException("Something fucked up"); + case 1: + if (greater != null) greater.remove(object); + else return; + break; + } + } + } + + public T getValue() { + return value; + } + + public TreeNode getLesser() { + return lesser; + } + + public TreeNode getGreater() { + return greater; + } + + @Override + public String toString() { + String str = ""; + if (greater != null) str += greater.toString(); + str += value.toString() + " "; + if (lesser != null) str += lesser.toString() + " "; + + return str; + } +} diff --git a/DEV 3.2/TP08/Tri/Tri.java b/DEV 3.2/TP08/Tri/Tri.java new file mode 100644 index 0000000..1fe0e74 --- /dev/null +++ b/DEV 3.2/TP08/Tri/Tri.java @@ -0,0 +1,16 @@ +/** + * Tri + */ +public class Tri { + + public static void main(String[] args) { + SearchTree t = new SearchTree<>(new RealComparator()); + + for (String arg : args) { + Float f = Float.parseFloat(arg); + t.add(f); + } + + System.out.println(t.toString()); + } +} \ No newline at end of file diff --git a/DEV 4.4/TP01/ex1.c b/DEV 4.4/TP01/ex1.c new file mode 100644 index 0000000..17733d9 --- /dev/null +++ b/DEV 4.4/TP01/ex1.c @@ -0,0 +1,117 @@ +#include +#include +#include + +void encrypt (uint32_t* v, uint32_t* k) +{ + uint32_t v0=v[0], v1=v[1], sum=0, i; /* set up */ + uint32_t delta=0x9e3779b9; /* a key schedule constant */ + uint32_t k0=k[0], k1=k[1], k2=k[2], k3=k[3]; /* cache key */ + for (i=0; i < 32; i++) { /* basic cycle start */ + sum += delta; + v0 += ((v1<<4) + k0) ^ (v1 + sum) ^ ((v1>>5) + k1); + v1 += ((v0<<4) + k2) ^ (v0 + sum) ^ ((v0>>5) + k3); + } /* end cycle */ + v[0]=v0; v[1]=v1; +} + +void decrypt (uint32_t* v, uint32_t* k) +{ + uint32_t delta=0x9e3779b9; + uint32_t v0=v[0], v1=v[1], sum=(delta << 5), i; + uint32_t k0=k[0], k1=k[1], k2=k[2], k3=k[3]; + + for (i=0; i < 32; i++) { + v1 -= ((v0<<4) + k2) ^ (v0 + sum) ^ ((v0>>5) + k3); + v0 -= ((v1<<4) + k0) ^ (v1 + sum) ^ ((v1>>5) + k1); + sum -= delta; + } + v[0]=v0; v[1]=v1; +} + + + +int treatFile(FILE* input, FILE* output, uint32_t key[4], char method) { + + int n; + uint32_t buffer[2]; + int m; + + //TODO: Padding management + + switch (method) + { + case 'd': + while ((n = fread(buffer, 4, 2, input)) > 0) { + decrypt(buffer, key); + + if (( m = fwrite(buffer, 4, 2, output)) != 2) { + return 1; + } + } + break; + + case 'e': + while ((n = fread(buffer, 4, 2, input)) > 0) { + encrypt(buffer, key); + + if (( m = fwrite(buffer, 4, 2, output)) != 2) { + return 1; + } + } + break; + } + + return 0; +} + +int main(int argc, char const *argv[]) +{ + if (argc < 5) { + printf("Usage: %s e/d \n", argv[0]); + return 0; + } + + if (!strcmp(argv[1], "-d") && !strcmp(argv[1], "-e")) { + printf("Invalid operation, use either e(ncrypt) or d(ecrypt)."); + return 1; + } + + uint32_t key[4]; + FILE* keyFile = fopen(argv[2], "r"); + if (!keyFile) { + printf("Unable to open key file.\n"); + return 1; + } + + if (fread(key, 4, 4, keyFile) != 4) { + printf("Invalid key length.\n"); + return 1; + } + + fclose(keyFile); + + FILE* input = fopen(argv[3], "r"); + if (!input) { + printf("Unable to open input file.\n"); + return 1; + } + + FILE* output = fopen(argv[4], "w"); + if (!output) { + printf("Unable to open output file.\n"); + return 1; + } + + int failure = treatFile(input, output, key, argv[1][1]); + + fclose(input); + fclose(output); + + if (failure) { + printf("Error during processing.\n"); + return 2; + } + + return 0; +} \ No newline at end of file diff --git a/DEV 4.4/TP01/fichier.crypt b/DEV 4.4/TP01/fichier.crypt new file mode 100644 index 0000000000000000000000000000000000000000..577288ccf12f9b539cb19e2f3dc2fce1016f76df GIT binary patch literal 38616 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 literal 0 HcmV?d00001 diff --git a/DEV 4.4/TP01/key1.k b/DEV 4.4/TP01/key1.k new file mode 100644 index 0000000..7fc6ef4 --- /dev/null +++ b/DEV 4.4/TP01/key1.k @@ -0,0 +1 @@ +÷Nà {q2‘*:¬¨œÇmfU#© `í±Å?&Q3 \ No newline at end of file diff --git a/DEV 4.4/TP01/test.txt b/DEV 4.4/TP01/test.txt new file mode 100644 index 0000000..1656f92 --- /dev/null +++ b/DEV 4.4/TP01/test.txt @@ -0,0 +1 @@ +abcdefgh \ No newline at end of file diff --git a/DEV-4.5/TP01/Chat-Relative/.gitignore b/DEV-4.5/TP01/Chat-Relative/.gitignore new file mode 100644 index 0000000..aa724b7 --- /dev/null +++ b/DEV-4.5/TP01/Chat-Relative/.gitignore @@ -0,0 +1,15 @@ +*.iml +.gradle +/local.properties +/.idea/caches +/.idea/libraries +/.idea/modules.xml +/.idea/workspace.xml +/.idea/navEditor.xml +/.idea/assetWizardSettings.xml +.DS_Store +/build +/captures +.externalNativeBuild +.cxx +local.properties diff --git a/DEV-4.5/TP01/Chat-Relative/.idea/.gitignore b/DEV-4.5/TP01/Chat-Relative/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/DEV-4.5/TP01/Chat-Relative/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/DEV-4.5/TP01/Chat-Relative/.idea/.name b/DEV-4.5/TP01/Chat-Relative/.idea/.name new file mode 100644 index 0000000..a070a24 --- /dev/null +++ b/DEV-4.5/TP01/Chat-Relative/.idea/.name @@ -0,0 +1 @@ +Chat \ No newline at end of file diff --git a/DEV-4.5/TP01/Chat-Relative/.idea/compiler.xml b/DEV-4.5/TP01/Chat-Relative/.idea/compiler.xml new file mode 100644 index 0000000..fb7f4a8 --- /dev/null +++ b/DEV-4.5/TP01/Chat-Relative/.idea/compiler.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/DEV-4.5/TP01/Chat-Relative/.idea/gradle.xml b/DEV-4.5/TP01/Chat-Relative/.idea/gradle.xml new file mode 100644 index 0000000..ad32906 --- /dev/null +++ b/DEV-4.5/TP01/Chat-Relative/.idea/gradle.xml @@ -0,0 +1,20 @@ + + + + + + + \ No newline at end of file diff --git a/DEV-4.5/TP01/Chat-Relative/.idea/misc.xml b/DEV-4.5/TP01/Chat-Relative/.idea/misc.xml new file mode 100644 index 0000000..fbdcc4d --- /dev/null +++ b/DEV-4.5/TP01/Chat-Relative/.idea/misc.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/DEV-4.5/TP01/Chat-Relative/.idea/vcs.xml b/DEV-4.5/TP01/Chat-Relative/.idea/vcs.xml new file mode 100644 index 0000000..c2365ab --- /dev/null +++ b/DEV-4.5/TP01/Chat-Relative/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/DEV-4.5/TP01/Chat-Relative/app/.gitignore b/DEV-4.5/TP01/Chat-Relative/app/.gitignore new file mode 100644 index 0000000..42afabf --- /dev/null +++ b/DEV-4.5/TP01/Chat-Relative/app/.gitignore @@ -0,0 +1 @@ +/build \ No newline at end of file diff --git a/DEV-4.5/TP01/Chat-Relative/app/build.gradle b/DEV-4.5/TP01/Chat-Relative/app/build.gradle new file mode 100644 index 0000000..6608f25 --- /dev/null +++ b/DEV-4.5/TP01/Chat-Relative/app/build.gradle @@ -0,0 +1,39 @@ +plugins { + id 'com.android.application' +} + +android { + compileSdk 32 + + defaultConfig { + applicationId "com.example.chat" + minSdk 21 + targetSdk 32 + versionCode 1 + versionName "1.0" + + testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + } + + buildTypes { + release { + minifyEnabled false + proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' + } + } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } + buildToolsVersion '33.0.0' +} + +dependencies { + + implementation 'androidx.appcompat:appcompat:1.3.0' + implementation 'com.google.android.material:material:1.4.0' + implementation 'androidx.constraintlayout:constraintlayout:2.0.4' + testImplementation 'junit:junit:4.13.2' + androidTestImplementation 'androidx.test.ext:junit:1.1.3' + androidTestImplementation 'androidx.test.espresso:espresso-core:3.4.0' +} \ No newline at end of file diff --git a/DEV-4.5/TP01/Chat-Relative/app/proguard-rules.pro b/DEV-4.5/TP01/Chat-Relative/app/proguard-rules.pro new file mode 100644 index 0000000..481bb43 --- /dev/null +++ b/DEV-4.5/TP01/Chat-Relative/app/proguard-rules.pro @@ -0,0 +1,21 @@ +# Add project specific ProGuard rules here. +# You can control the set of applied configuration files using the +# proguardFiles setting in build.gradle. +# +# For more details, see +# http://developer.android.com/guide/developing/tools/proguard.html + +# If your project uses WebView with JS, uncomment the following +# and specify the fully qualified class name to the JavaScript interface +# class: +#-keepclassmembers class fqcn.of.javascript.interface.for.webview { +# public *; +#} + +# Uncomment this to preserve the line number information for +# debugging stack traces. +#-keepattributes SourceFile,LineNumberTable + +# If you keep the line number information, uncomment this to +# hide the original source file name. +#-renamesourcefileattribute SourceFile \ No newline at end of file diff --git a/DEV-4.5/TP01/Chat-Relative/app/src/androidTest/java/com/example/chat/ExampleInstrumentedTest.java b/DEV-4.5/TP01/Chat-Relative/app/src/androidTest/java/com/example/chat/ExampleInstrumentedTest.java new file mode 100644 index 0000000..69e9c15 --- /dev/null +++ b/DEV-4.5/TP01/Chat-Relative/app/src/androidTest/java/com/example/chat/ExampleInstrumentedTest.java @@ -0,0 +1,26 @@ +package com.example.chat; + +import android.content.Context; + +import androidx.test.platform.app.InstrumentationRegistry; +import androidx.test.ext.junit.runners.AndroidJUnit4; + +import org.junit.Test; +import org.junit.runner.RunWith; + +import static org.junit.Assert.*; + +/** + * Instrumented test, which will execute on an Android device. + * + * @see Testing documentation + */ +@RunWith(AndroidJUnit4.class) +public class ExampleInstrumentedTest { + @Test + public void useAppContext() { + // Context of the app under test. + Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext(); + assertEquals("com.example.chat", appContext.getPackageName()); + } +} \ No newline at end of file diff --git a/DEV-4.5/TP01/Chat-Relative/app/src/main/AndroidManifest.xml b/DEV-4.5/TP01/Chat-Relative/app/src/main/AndroidManifest.xml new file mode 100644 index 0000000..a485798 --- /dev/null +++ b/DEV-4.5/TP01/Chat-Relative/app/src/main/AndroidManifest.xml @@ -0,0 +1,27 @@ + + + + + + + + + + + + + + \ No newline at end of file diff --git a/DEV-4.5/TP01/Chat-Relative/app/src/main/java/com/example/chat/MainActivity.java b/DEV-4.5/TP01/Chat-Relative/app/src/main/java/com/example/chat/MainActivity.java new file mode 100644 index 0000000..6398d4b --- /dev/null +++ b/DEV-4.5/TP01/Chat-Relative/app/src/main/java/com/example/chat/MainActivity.java @@ -0,0 +1,14 @@ +package com.example.chat; + +import androidx.appcompat.app.AppCompatActivity; + +import android.os.Bundle; + +public class MainActivity extends AppCompatActivity { + + @Override + protected void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + setContentView(R.layout.activity_main); + } +} \ No newline at end of file diff --git a/DEV-4.5/TP01/Chat-Relative/app/src/main/res/drawable-v24/ic_launcher_foreground.xml b/DEV-4.5/TP01/Chat-Relative/app/src/main/res/drawable-v24/ic_launcher_foreground.xml new file mode 100644 index 0000000..2b068d1 --- /dev/null +++ b/DEV-4.5/TP01/Chat-Relative/app/src/main/res/drawable-v24/ic_launcher_foreground.xml @@ -0,0 +1,30 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/DEV-4.5/TP01/Chat-Relative/app/src/main/res/drawable/ic_launcher_background.xml b/DEV-4.5/TP01/Chat-Relative/app/src/main/res/drawable/ic_launcher_background.xml new file mode 100644 index 0000000..07d5da9 --- /dev/null +++ b/DEV-4.5/TP01/Chat-Relative/app/src/main/res/drawable/ic_launcher_background.xml @@ -0,0 +1,170 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/DEV-4.5/TP01/Chat-Relative/app/src/main/res/layout/activity_main.xml b/DEV-4.5/TP01/Chat-Relative/app/src/main/res/layout/activity_main.xml new file mode 100644 index 0000000..bd4ceef --- /dev/null +++ b/DEV-4.5/TP01/Chat-Relative/app/src/main/res/layout/activity_main.xml @@ -0,0 +1,39 @@ + + + + + +