-
Notifications
You must be signed in to change notification settings - Fork 0
/
tuto_android.tex
180 lines (138 loc) · 6.76 KB
/
tuto_android.tex
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
\documentclass[a4paper,10pt]{article}
\title{Tuto Android - Faire une apli du feu de dieu !!}
\author{TERRIE Corentin \\ CROS Bastien \\ MONNIER Matthias}
\date{\today}
\usepackage[utf8]{inputenc}
\usepackage[french]{babel}
\usepackage{lmodern} % Pour changer le pack de police
\usepackage{makeidx}
\usepackage{fancyhdr}
\usepackage{graphicx}
\usepackage[lofdepth,lotdepth]{subfig}
\usepackage{float}
\usepackage{hyperref}
%---------------------------------------------------------
\usepackage{listings}
\usepackage{textcomp}
\usepackage{color}
% JAVA en couleur ;-)- -----------------------------------
\lstset{
language=Java,
basicstyle=\scriptsize, % ou ça==> basicstyle=\normalsize,
upquote=true,
aboveskip={1.5\baselineskip},
columns=fullflexible,
showstringspaces=false,
extendedchars=true,
breaklines=true,
showtabs=false,
showspaces=false,
showstringspaces=false,
identifierstyle=\ttfamily,
keywordstyle=\color[rgb]{0,0,1},
commentstyle=\color[rgb]{0.133,0.545,0.133},
stringstyle=\color[rgb]{0.627,0.126,0.941},
breaklines=true,
}
%----------------------------------------------------------
\begin{document}
\include{pagedegarde}
\tableofcontents
\clearpage
%-------------------------------------------------------------------------------
\section{Notion élémentaire Watson} % Intro aux développement Android
%-------------------------------------------------------------------------------------------------------------
\section{Démarrer sous Android}
%install et tout et tout
\subsection{Sous Windows}
% Indiquer la liste des programmes
\subsection{Sous Linux}
% ligne de code nécessaire à l'install
%-------------------------------------------------------------------------------------------------------------
\section{Une première appli - Interface de base}
\subsection{App 1}
% appli basique : par exemple block note du site du zéro
\subsection{Cycle de vie d'une activité}
% 2nd partie : gestion du cycle de vie
%-------------------------------------------------------------------------------------------------------------
\section{Complexification de l'appli - Utiliser plusieurs activités}
% on améliore l'appli en affichant ce que l'on rentre dans le block note dans une seconde
% activité
%-------------------------------------------------------------------------------------------------------------
\section{Intégration du joystick}
% on part d'une appli qui propose le choix entre joystick et gyro
% on intègre le joystic dans une nouvelle activité
%-------------------------------------------------------------------------------------------------------------
\section{Utilisation des capteurs}
% on intège les gyro dans une autre activité
Pour apprendre à utiliser les capteurs de votre support android, le tutoriel de Matthias Seguy est très bien fait.
Voici le lien :
\url{http://mathias-seguy.developpez.com/cours/android/android-capteurs}
%-------------------------------------------------------------------------------------------------------------
\section{Communication avec une STM}
\subsection{Connexion Bluetooth}
% connection BT -> intro a l'api BT, mode de connexion , ordre, etc.
% fais le tour des possibilités de base de l'api
% '-> à metre dans le 1er paragraphe. Ici juste un intro.
\paragraph{API Bluetooth Android}
% Besoin si différent de l'intro !!!
% presenter les différents élements
% partie pas mise en forme !!
Service offert par l'API : \\
- Scanner les périphériques BT. \\
- Connaître les différents périphériques appareillés. \\
- RFCOMM. \\
- Connection à des périphériques BT. \\
- Transfert de données via BT. \\
- Multiple connection. \\\\
RFCOMM $->$ serial port emulation (RS-232 serial port) $=$ protocole bluetooth pour simuler une connexion série (jusqu'à 6) avec un autre péripherique.\\\\
Quelques classes offerte par l'API BT : \\
- \textit{BluetoothAdapter} $=$ Interface physique BT pour interagir avec son la radio BT locale. \\
- \textit{BluetoothDevice} $=$ Chacun représente un périphériques BT distant. Contient les inforations telles que le nom, l'adresse etc. \\
- \textit{BluetoothSocket} $=$ (équivalent des TCP Socket) Point de connexion avec un périphériques, permet d'échanger des données. \\
- \textit{BluetoothClass} $=$ Décrit les caractéristiques d'un périphériques BT distant. \\
\paragraph{Première approche du Bluetooth : \\}
Pour découvrir l'utilisation du Bluetooth sur une tablette Android, voici un petits tuto assez complet : \\
\url{http://www.tutos-android.com/utilisation-bluetooth-application-android} \\
Il permet d'appréhender les fonctionnalités de base offerte par l'API bluetooth, telle que l'autorisation et l'activation de celui-ci. Il explique aussi comment scanner les périphériques environnant, et parle de la connexion entre périphériques bluetooth, du coté serveur et client.
\paragraph{Se connecter à un module Bluetooth}
En sebasant sur l'application proposé par le site suivant : \\
\url{http://marcel.cremmel.llc.free.fr/Projets/Android_files/Tutorial%20Android%20-%20Communication%20Bluetooth%20SPP.pdf}
Nous allons maitenant créer une classe service permettant de gérer les connexion Bluetooth.
\subparagraph{Les services}
Le service est l'équivalent d'une Activités, mais sans interface graphique. Cela le rends pratique pour exécuter des tâche en arrière-plan. Par exemple, lorsque l'on écoute de la musique sur son téléphone, il est possible de revenir sur le bureau, et de lancer d'autre application sans que la musique s'arrète : c'est la tout l'intérêt des services.
Pour implémenter un service, il faut créer une nouvelle classe, que l'on nommera \textit{BluetoothService}, et la faire hériter de la classe \textit{service} grâce au mot clef \textit{extends} :
\begin{lstlisting}
public class BluetoothService extends Service
{
Ici on implémente les méthodes de la classe
}
\end{lstlisting}
\paragraph{Gérer les devices}
% lister périphériqus déjà existant
% recherche de nouveau périphériques -> parleer de BroadcastReceiver
\begin{lstlisting}
@Override
protected void onDestroy() {
super.onDestroy();
bluetoothAdapter.cancelDiscovery();
unregisterReceiver(bluetoothReceiver);
}
\end{lstlisting}
\paragraph{Connexion à un périphériques}
\subparagraph{Client}
\subparagraph{Serveur}
\subparagraph{Périphérique exterieur}
% connexion avec un peripherique autre qu'andoid
\subsection{Introduction au service}
% introduction au service
% -> Quoi c'est ?
% -> Cycle de vie
% -> la class service
% -> intérargir avec ??
\subsection{Programme STM32 Nucléo}
% programme de la stm
%-------------------------------------------------------------------------------------------------------------
\section{Foire aux conseils ;-)}
% liste des galères et leurs solutions !
\end{document}