Les intents sous Android
I. Types de transmission d'Intent
II. Structure d'un Intent
IV. Intent Filter
V. Les différents types d'Intents
VI. Transfert de données entre activités
VII. Exercice : Utilisation des Intent de passer d'une activité à l'autre envoyer des données via putExtra
Le support de formation de l'introduction à la programmation sous Android,réalisé par Houssem Lahiani dans le cadre du National Tour de Google Developers Group de Tunis.
Cycle de vie d'activité Android et les composant d'AndroidHoussem Lahiani
Chapitre expliquant le cycle de vie d'une activité Android avec une application pour les différentes méthodes formant le cycle de vie de l'Activity.
Il contient aussi quelques exercices sure les composants Android comme les boites de dialogues et les case à cocher (
Mise en place de l'ActionBarCompat dans vos projets Android.Mathias Seguy
Petite conférence sur la mise en place de l'ActionBarCompat dans votre application Android avec:
Mise en place de l'ActionBarCompat
Ajout de MenuItem
Mise en place d'une ActionView de recherche
Mise en place de l'ActionMode.
ToulouseAndroidUserGroup du 5 Juin 2014
Android : système d'exploitation Linux pour appareils
nomades avec bibliothèques intégrées
(SQLite, WebKit, OpenGL...), machine virtuelle et
plate-forme de développement basée sur Java
Les intents sous Android
I. Types de transmission d'Intent
II. Structure d'un Intent
IV. Intent Filter
V. Les différents types d'Intents
VI. Transfert de données entre activités
VII. Exercice : Utilisation des Intent de passer d'une activité à l'autre envoyer des données via putExtra
Le support de formation de l'introduction à la programmation sous Android,réalisé par Houssem Lahiani dans le cadre du National Tour de Google Developers Group de Tunis.
Cycle de vie d'activité Android et les composant d'AndroidHoussem Lahiani
Chapitre expliquant le cycle de vie d'une activité Android avec une application pour les différentes méthodes formant le cycle de vie de l'Activity.
Il contient aussi quelques exercices sure les composants Android comme les boites de dialogues et les case à cocher (
Mise en place de l'ActionBarCompat dans vos projets Android.Mathias Seguy
Petite conférence sur la mise en place de l'ActionBarCompat dans votre application Android avec:
Mise en place de l'ActionBarCompat
Ajout de MenuItem
Mise en place d'une ActionView de recherche
Mise en place de l'ActionMode.
ToulouseAndroidUserGroup du 5 Juin 2014
Android : système d'exploitation Linux pour appareils
nomades avec bibliothèques intégrées
(SQLite, WebKit, OpenGL...), machine virtuelle et
plate-forme de développement basée sur Java
http://fr.droidcon.com/2014/agenda/
http://fr.droidcon.com/2014/agenda/detail?title=Google+Glass%3A+which+framework+depending+for+which+usage
Ready to develop your first Google Glass app? I guess that you will be asking yourself the same questions we had :
• How to sign in your users without keyboard?
• How to scan or detect an object just by looking at it?
• How to provide an intuitive and interactive UX?
• How to deal with your IT system and share information between users?
We will show you which dependencies to add to your build.gradle to satisfy your user's wildest dreams and provide them a full compatible app for connected glasses.
You're not ready? Don't panic, our ideas will convince you to buy glasses. And with our code you will discover that a Google Glass app is nothing else but an Android App.
Speaker : Mathieu Hausherr, OCTO Technology
Mathieu Hausherr is a native mobile app developer at Octo Technology. He develops iOS and Android apps. He believes in mobile development industrialization, unit testing and continuous integration. He loves testing new devices like glasses or watches.
Follow him on twitter (@mhausherr)
Speaker : Cédric Pointel, OCTO Technology
Cédric Pointel is as mobile developer at OCTO Technology since 4 years. He develops mobile apps, mostly on iOS, for bank, insurance, luxury or social media. He also helps companies to improve theirs skills on mobile knowledge, code quality and continuous integration. Interested in robotics and connected objects, he has started testing new devices like Google Glass since the beginning of the year.
Follow him on twitter (@cpointel)
Les plugins sont un excellent moyen d'étendre les fonctionnalités de QGIS et pour
automatiser les traitements cartographiques. Vous pouvez écrire des plugins à
l'aide du langage Python qui peut aller de l’affichage d’un simple texte au
développement d’une interface permettant de réaliser des traitements complexes.
Ce tutoriel décrira pour vous le processus de développement des plugins partant
de la configuration de votre environnement de développement, la conception de
l'interface utilisateur et l’écriture du code python pour interagir avec QGIS.
Cycle de vie d'activité Android et les composant d'AndroidHoussem Lahiani
Chapitre expliquant le cycle de vie d'une activité Android avec une application pour les différentes méthodes formant le cycle de vie de l'Activity.
Il contient aussi quelques exercices sure les composants Android comme les boites de dialogues(AlertDialog) et les case à cocher (RadioButton).
Introduction au widgets de l'IDE Eclipse pour le développement d'application Android. Ici vous trouverez quelques notions pour mieux comprendre les TextView, EditText, Button. Et un petit TP pour vous mettre dans l'ambiance de la programmation mobile
Apple Watch par Benoit Capallere et Joeffrey BocquetCocoaHeads France
La montre sera disponible en précommande le 10 avril (soit le lendemain de cette édition CocoaHeads Paris) mais Benoit et Joeffrey sont déjà sur le coup pour nous présenter ce que l’on peut faire avec une Apple Watch, son architecture logicielle et les différences avec le développement d’une application iOS. Nous aurons aussi un retour d’expérience sur la phase de test qui a eu lieu chez Apple à Londres.
http://fr.droidcon.com/2014/agenda/
http://fr.droidcon.com/2014/agenda/detail?title=Google+Glass%3A+which+framework+depending+for+which+usage
Ready to develop your first Google Glass app? I guess that you will be asking yourself the same questions we had :
• How to sign in your users without keyboard?
• How to scan or detect an object just by looking at it?
• How to provide an intuitive and interactive UX?
• How to deal with your IT system and share information between users?
We will show you which dependencies to add to your build.gradle to satisfy your user's wildest dreams and provide them a full compatible app for connected glasses.
You're not ready? Don't panic, our ideas will convince you to buy glasses. And with our code you will discover that a Google Glass app is nothing else but an Android App.
Speaker : Mathieu Hausherr, OCTO Technology
Mathieu Hausherr is a native mobile app developer at Octo Technology. He develops iOS and Android apps. He believes in mobile development industrialization, unit testing and continuous integration. He loves testing new devices like glasses or watches.
Follow him on twitter (@mhausherr)
Speaker : Cédric Pointel, OCTO Technology
Cédric Pointel is as mobile developer at OCTO Technology since 4 years. He develops mobile apps, mostly on iOS, for bank, insurance, luxury or social media. He also helps companies to improve theirs skills on mobile knowledge, code quality and continuous integration. Interested in robotics and connected objects, he has started testing new devices like Google Glass since the beginning of the year.
Follow him on twitter (@cpointel)
Les plugins sont un excellent moyen d'étendre les fonctionnalités de QGIS et pour
automatiser les traitements cartographiques. Vous pouvez écrire des plugins à
l'aide du langage Python qui peut aller de l’affichage d’un simple texte au
développement d’une interface permettant de réaliser des traitements complexes.
Ce tutoriel décrira pour vous le processus de développement des plugins partant
de la configuration de votre environnement de développement, la conception de
l'interface utilisateur et l’écriture du code python pour interagir avec QGIS.
Cycle de vie d'activité Android et les composant d'AndroidHoussem Lahiani
Chapitre expliquant le cycle de vie d'une activité Android avec une application pour les différentes méthodes formant le cycle de vie de l'Activity.
Il contient aussi quelques exercices sure les composants Android comme les boites de dialogues(AlertDialog) et les case à cocher (RadioButton).
Introduction au widgets de l'IDE Eclipse pour le développement d'application Android. Ici vous trouverez quelques notions pour mieux comprendre les TextView, EditText, Button. Et un petit TP pour vous mettre dans l'ambiance de la programmation mobile
Apple Watch par Benoit Capallere et Joeffrey BocquetCocoaHeads France
La montre sera disponible en précommande le 10 avril (soit le lendemain de cette édition CocoaHeads Paris) mais Benoit et Joeffrey sont déjà sur le coup pour nous présenter ce que l’on peut faire avec une Apple Watch, son architecture logicielle et les différences avec le développement d’une application iOS. Nous aurons aussi un retour d’expérience sur la phase de test qui a eu lieu chez Apple à Londres.
Présentation Versusmind de la Plateforme Meteor par Arthur Maroulier : Meteor est une série de projets 100% open source intégrés pour créer une plateforme d'application JavaScript complète pour le développement d'applications réactives sur web et mobile.
Requetes ecommerce - les différences US vs Europe.pptxPhilippe YONNET
Beaucoup de fonctionnalités présentes sur les requêtes ecommerce sur les SERPs de Google aux USA, n'existent pas encore sur Google FR. La faute au RGPD, au DMA, mais cela peut arriver sous une autre forme en France, avec un impact potentiel non négligeable sur l'e-commerce
La télévision fait partie intégrante de notre quotidien. Avec l'évolution de la technologie, notre manière de consommer le contenu télévisuel a changé de manière significative. L'une des innovations les plus remarquables dans ce domaine est l'IPTV. Mais qu'est-ce que c'est exactement ? Et pourquoi l'ABO IPTV PREMIUM est-il si révolutionnaire ? Découvrons ensemble.
ABO IPTV PREMIUM peut également être utilisé sur des ordinateurs portables, des PC de bureau et même des consoles de jeux.
Regardez vos émissions préférées en déplacement grâce aux applications mobiles disponibles pour iOS et Android.
Que vous ayez une Smart TV Samsung, LG, ou autre, ABO IPTV PREMIUM est compatible avec la plupart des téléviseurs intelligents.
Les logiciels libres : une opportunite pour votre entreprise?Asher256
L'utilisation des logiciels libres se généralise dans le milieu professionnel, notamment avec l'intégration croissante de logiciels de gestion, de comptabilité et administratifs. Vous découvrirez les principaux points abordés lors de la conférence.
La conférence intitulée « Les logiciels libres, une opportunité pour votre entreprise ? » visait à explorer le potentiel des logiciels libres dans le milieu des affaires.
Dans cette présentation, j'ai principalement mis en avant les avantages des logiciels libres pour les entreprises, tout en abordant certains éléments de manière plus spectaculaire.
L'objectif n'était pas de présenter exhaustivement tous les avantages et désavantages, mais plutôt :
- De simplifier le sujet pour un public découvrant les logiciels libres, potentiellement composé de futurs entrepreneurs.
- De favoriser une session de questions/réponses, durant laquelle nous avons discuté plus objectivement et en détail des avantages et désavantages. Cette session a duré environ une heure.
- De présenter les logiciels libres sous un jour favorable pour inciter les participants à les explorer davantage.
Pour approfondir vos connaissances sur les logiciels libres dans les entreprises, je vous recommande de consulter :
- Un dossier complet sur les logiciels libres dans les entreprises (un document PDF de plus de 80 pages).
Vous pouvez également lire ces articles pour en savoir plus :
- Quels usages des logiciels libres dans les entreprises ?
- L'entreprise doit-elle adopter les logiciels libres ?
- Logiciels libres et entreprise.
La discussion est maintenant ouverte. Quelle est votre perspective sur l'utilisation des logiciels libres dans les entreprises ? Quels sont, selon vous, leurs avantages et leurs inconvénients ? Y a-t-il des écueils à éviter ?
Le gros titres des slides:
Les Logiciels Libres : Une Opportunité Pour Les Entreprises ?
Les logiciels propriétaires ? ● (aussi appelées logiciels privateurs) ● Propriétaire = Un logiciel qui n’est pas ”libre”. ● En général (il y a des variantes) : – Il est interdit de le partager – Droit seulement de l’utiliser – Code source fermé – En général payant
Les Logiciels Libres : Une Opportunité Pour Les Entreprises ?
Les logiciels propriétaires ? ● (aussi appelées logiciels privateurs) ● Propriétaire = Un logiciel qui n’est pas ”libre”. ● En général (il y a des variantes) : – Il est interdit de le partager – Droit seulement de l’utiliser – Code source fermé – En général payant
Les Licences Open Source ● Plus de droits: BSD, X, MIT ● Libres, avec conditions : GPL, LGPL ● Autres licences : Art Libre, Creative Common…
Le logiciel libre, selon la FSF (4 libertés de la GPL) ● Exécuter sans restriction ● Étudier son fonctionnement ● Redistribuer des copies (même payantes) ● Améliorer le programme et publier les améliorations
Comment s’ont développés les logiciels libres ? ● Bénévoles – Organisés (GNU, Apache) – Isolés ● Entreprises – QT – OpenERP ● Divers profiles : – Traducteur – Développeur –
Les dernières core update, l'arrivée de l'IA dans l'algorithme, les HCU, les product revienws upates ont sérieusement mis à mal l'efficacité des vieilles méthodes SEO. Il faut passer à autre chose...
Actu du SEO - Matin Népérien Lille - Agence NeperPhilippe YONNET
L'actu du SEO présentée lors du Matin Népérien de Lille le 4 janvier 2024.
On a parlé DMA, AI Act, Cookies Tiers, des Core Update de Mars, AI Overviews, Bots Google et Crawl, et bien sûr ... des Google Leaks
Stratégies pour accroître la visibilité et l'engagement de votre blogAsher256
Dans la présentation proposée, vous explorerez les fondamentaux et les stratégies essentielles pour augmenter la visibilité de votre blog. Voici une élaboration détaillée sur les différents aspects qui seront abordés:
Nous débuterons par des techniques de promotion essentielles. Cela inclut l'utilisation des réseaux sociaux, le networking avec d'autres blogueurs, et la participation à des forums et des groupes en ligne pertinents. L'objectif est de créer une présence initiale qui capte l'attention.
Ensuite, nous discuterons de méthodes pour augmenter le trafic vers votre site. Cela comprend le marketing de contenu, lequel implique la création d'articles intéressants, pertinents et utiles qui répondent aux questions de votre audience cible. Nous aborderons également l'importance de l'email marketing et des newsletters pour attirer régulièrement des visiteurs.
Fidéliser votre audience est important pour assurer le succès à long terme de votre blog. Nous explorerons des techniques telles que l'offre de contenu exclusif, la mise en place de programmes de fidélité, et la régularité des publications. Engager activement vos lecteurs via les commentaires et les réseaux sociaux sera également discuté.
Un des aspects les plus techniques mais essentiels est le référencement naturel, ou SEO (Search Engine Optimization). Vous apprendrez comment optimiser vos articles de blog et votre site pour améliorer votre classement dans les résultats des moteurs de recherche comme Google et Yahoo. Cela inclut l'optimisation des mots-clés, la création de liens retour (backlinks), l'amélioration de la vitesse de chargement du site, et plus encore.
Stratégies pour accroître la visibilité et l'engagement de votre blog
5.ateliers avancés
1.
2. Ateliers
Créer une nouvelle Activity
Ecouter les événements
Fragments
Personnaliser une ListView
ContactProvider
Internationaliser vos applications Android
3.
4. Le problème
Une Activity permet à l’utilisateur de faire …
… une activité
Une Activity est associé à une UI (un écran)
Quand on change d ’écran, on change d’Activity
Une application est composée de différentes activités
Comment créer ces activités ?
6. Créer une nouvelle Activity
Peut se faire à la suite d’une action dans la UI
Appuie sur un bouton par exemple
Dans l’activity parent :
Créer un ‘Intent’, spécifiant la classe de l’activité à créer
Peut passer des paramètres supplémentaires
startActivity(intent)
Intent intent = new Intent(this, DisplayMessageActivity.class);
intent.putExtra(EXTRA_MESSAGE, ‘A message’);
startActivity(intent);
Un ‘intent’ est un
message que l’on
passe au système.
Indique la classe
de l’Activity
Ajoute un objet
que l’on pourra
récupérer
Demande la
création de
l’Activity
7. Créer une nouvelle Activity
Ne pas oublier d’ajouter la nouvelle Activity au
Manifest
<activity
android:name="com.example.myfirstapp.DisplayMessageActivity"
android:label="@string/title_activity_display_message"
android:parentActivityName="com.example.myfirstapp.MainActivity" >
<meta-data
android:name="android.support.PARENT_ACTIVITY"
android:value="com.example.myfirstapp.MainActivity" />
</activity>
8. Récupérer des paramètres
La nouvelle Activity peut récupérer les données
passées par le parent
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Get the message from the intent
Intent intent = getIntent();
String message = intent.getStringExtra(MainActivity.EXTRA_MESSAGE);
}
9. Tutoriel
- Starting Another Activity
http://developer.android.com/training/basics/first
app/starting-activity.html
Intent intent = new Intent(this, DisplayMessageActivity.class);
intent.putExtra(EXTRA_MESSAGE, ‘A message’);
startActivity(intent);
Un ‘intent’ est un
message que l’on
passe au système.
Indique la classe
de l’Activity
Ajoute un objet
que l’on pourra
récupérer
Demande la
création de
l’Activity
10.
11. Cycle de vie
d’une activité
Possibilité de
surcharger les
méthodes onCreate(),
onStart(), …
14. Le problème
Les éléments graphiques envoient des « évenements »
onClick, onTouch, …
Comment les exploiter ?
15. La solution
Ecouter les événements venant des éléments
graphiques (ou autres)
Utiliser le pattern Observateur/Observé
Votre code observe les éléments graphique
buttonPlus = (Button) findViewById(R.id.buttonPlus);
buttonPlus.setOnClickListener(eventListener);
16. Deux approches
Déclarer les listeners dans le code
Déclarer dans le .xml la méthode traitant l’événement
View.OnClickListener listener =
new View.OnClickListener() {
public void onClick(View v) {
plusClick();
}
};
public void onCreate(…) {
buttonPlus = (Button) findViewById(R.id.buttonPlus);
buttonPlus.setOnClickListener(listener);
}
public void plusClick() {
// Code a effectuer apres le click
}
17. Deux approches
Déclarer dans le layout.xml la méthode traitant
l’événement
public void onCreate(…) {
}
public void plusClick() {
// Code a effectuer apres le click
}
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/button_plus"
android:onClick=« plusClick" />
18. Events
onClick()
From View.OnClickListener. This is called when the user either touches the item (when in touch mode),
or focuses upon the item with the navigation-keys or trackball and presses the suitable "enter" key or
presses down on the trackball.
onLongClick()
From View.OnLongClickListener. This is called when the user either touches and holds the item (when
in touch mode), or focuses upon the item with the navigation-keys or trackball and presses and holds
the suitable "enter" key or presses and holds down on the trackball (for one second).
onFocusChange()
From View.OnFocusChangeListener. This is called when the user navigates onto or away from the item,
using the navigation-keys or trackball. onKey() From View.OnKeyListener. This is called when the user is
focused on the item and presses or releases a hardware key on the device.
onTouch()
From View.OnTouchListener. This is called when the user performs an action qualified as a touch event,
including a press, a release, or any movement gesture on the screen (within the bounds of the item).
onCreateContextMenu()
From View.OnCreateContextMenuListener. This is called when a Context Menu is being built (as the
result of a sustained "long click"). See the discussion on context menus in the Menus developer guide.
(from Android developers site)
http://developer.android.com/guide/topics/ui/ui-events.html
19. Tutoriel – Calculatrice
Faire une application calculatrice
http://a-
renouard.developpez.com/tutoriels/android/calculatric
e/
Modifier la calculatrice
pour spécifier les ‘écouteurs’ (listeners) dans le fichier de
layout.
Pour n’avoir qu’une méthode appelé lors de l’appuie sur
l’un des boutons ‘chiffres’
On peut retrouver à quel chiffre correspond le bouton à partir
du texte du bouton
22. Le problème
Comment avoir des parties de UI (d’écran) réutilisable
dans plusieurs écrans ?
Ex: tablette : deux parties côte à côte
petit écran : deux écrans
23. Fragment
C’est une partie de UI, associé à des comportements
Partie de UI
Déclarée dans un layout.xml
Ou dans le code
Comportements
Déclarés dans une classe étendant « Fragment »
(Android>3.x)
Peut être vue comme une Activity réutilisable
Doit être contenu dans une Activity parent
Réutilisable dans différentes Activity
24. En pratique
Le layout de l’activity parent déclare l’emplacement du
fragment, et la class du Fragment
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="horizontal"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<fragment android:name="com.example.android.fragments.ArticleFragment "
android:id="@+id/headlines_fragment"
android:layout_weight="1"
android:layout_width="match_parent "
android:layout_height="0dp" />
</LinearLayout>
classe du
fragment
Emplacement
25. En pratique
Il faut créer la classe du Fragment
Bien retourner la View du fragment dans
onViewCreate()
public class ArticleFragment extends Fragment {
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
// Inflate the layout for this fragment
return inflater.inflate(R.layout.article_view, container, false);
}
}
26. En pratique
Il faut créer le layout du Fragment
Comme un layout d’activité
<TextView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/book_detail"
style="?android:attr/textAppearanceLarge"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:padding="16dp"
android:textIsSelectable="true"/>
28. Biblio
Building a Dynamic UI with Fragments
http://developer.android.com/training/basics/fragments/index.html
Fragments
http://developer.android.com/guide/components/fragments.html
Utiliser les Fragments dans une application Android pour diviser l'écran
en plusieurs Activity
http://sberfini.developpez.com/tutoriaux/android/fragments/
Un tutorial avec une solution clé en main
http://www.vogella.com/tutorials/AndroidFragments/article.html#fragments_t
utorial
Supporting Different Screens
http://developer.android.com/training/basics/supporting-devices/screens.html
Exemple
Créer une nouvelle application Android, et choisir « master/detail flow »
29.
30. Le problème
Comment afficher une liste d’éléments sur un même
écran ?
Ex: une liste de personnes avec leur email ?
31. Solution
Utiliser une ListView, un ListAdapter et un layout dédié pour afficher
un élément de la liste
ListView
élement graphique indiquant l’endroit dans la UI où doit être affiché la
liste
Dans mainLayout.xml (ou en code)
Layout pour un élément
Indique comment afficher un élément de la liste
ListView utilisera une instance de ce Layout pour chaque élément
Adapter
Classe faisant le lien entre:
ListView,
le Layout pour un élément,
la liste des éléments
36. Créer et associer l’adapter
(Dans l’activity)
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
// Recherche la vue affichant la liste
ListView bookList = (ListView) findViewById(R.id.booklist);
// Crée la liste demandée par SimpleADapter
BookCollection books = new BookCollection();
List<Map<String, String>> listOfBook = new ArrayList<Map<String, String>>();
for( Book book : books.getBooks()) {
Map<String, String> bookMap = new HashMap<String, String>();
bookMap.put("img", String.valueOf(R.drawable.ic_launcher)); // use available img
bookMap.put("author", book.getAuthor());
bookMap.put("title", book.getTitle());
bookMap.put("isbn", book.getIsbn());
listOfBook.add(bookMap);
}
// Cree un adapter faisant le lien entre la liste d'élément et la ListView servant à l'affichage.
SimpleAdapter listAdapter = new SimpleAdapter(this.getBaseContext(), listOfBook, R.layout.book_detail,
new String[] {"img", "author", "title", "isbn"},
new int[] {R.id.img, R.id.author, R.id.title, R.id.isbn});
//Associe l’adapter et le ListView
bookList.setAdapter(listAdapter);
}
39. Biblio
Personnaliser une ListView
http://a-
renouard.developpez.com/tutoriels/android/personnali
ser-listview/
40.
41. Probléme
On veut accéder à la liste des contacts existant dans le
smartphone.
42. Solution
Utiliser le « Contact Provider »
class ContactsContract
android.provider.ContactsContract
43. Content Provider
Permet de gérer l’accès à des données structurées
Exemple
ContactProvider
CalendarProvider
Votre application ;
doit demander le ContentProvider
Devient client du ContentProvider
44. ContentProvider :
Structure des données
Organisées en table
Une rangée (row) représente les données d’un objet
Une colonne représente les données du même attribut
On parcours les rangée à l’aide d’un ‘cursor’
On demande une valeur par le nom de sa colonne
46. Atelier
Créer une activité affichant tous les contacts dans un
unique TextView
Voir le tutoriel
http://examples.javacodegeeks.com/android/core/provi
der/android-contacts-example/
49. Memory
Definitions
http://fr.wikipedia.org/wiki/Memory_%28jeu%29
http://www.linternaute.com/jeu/classique/le-memory/
But du jeu
Le but du jeu est de retourner des cartes deux par deux,
et de retrouver les paires.
Réalisation
Points difficiles
Interface dynamique
Générateur aléatoire
50. Réflexions sur l’architecture
MainActivity
avec GridLayout
1x CardFragment
16 instances ?
paramétré par ce qui
doit être affiché ?
A A A A
A A A A
A A A A
A A A A
score : 0/8
57. Debuter
Introduction à la programmation sous Android
http://nbenbourahla.developpez.com/tutoriels/android
/introduction-programmation-android/
Introduction aux vues sous Android
http://nbenbourahla.developpez.com/tutoriels/an
droid/introduction-vues-sous-android/
59. Divers
Intégration Google Maps dans Android
http://michel-dirix.developpez.com/tutoriels/android/integration-
google-maps-android/
Personnaliser une ListView
http://a-
renouard.developpez.com/tutoriels/android/personnaliser-
listview/
Internationaliser vos applications Android
http://a-
renouard.developpez.com/tutoriels/android/internationalisation/
Construire dynamiquement ses IHM Android
http://mathias-
seguy.developpez.com/cours/android/construction-ihm-
dynamique/
60. Notifications
Utiliser les notifications pour avertir l'utilisateur
http://a-
renouard.developpez.com/tutoriels/android/notificatio
ns/
Les notifications sous Android
http://nbenbourahla.developpez.com/tutoriels/java/an
droid_notification/
61. Fragments
Building a Dynamic UI with Fragments
http://developer.android.com/training/basics/fragment
s/index.html
Utiliser les Fragments dans une application
Android pour diviser l'écran en plusieurs Activity
http://sberfini.developpez.com/tutoriaux/android/frag
ments/
Supporting Different Screens
http://developer.android.com/training/basics/supportin
g-devices/screens.html
62. Services
Les services sous Android
http://nbenbourahla.developpez.com/tutoriels/android
/services-sous-android/
63. Comment utiliser SQLite sous
Android
Comment utiliser SQLite sous Android
http://a-
renouard.developpez.com/tutoriels/android/sqlite/