c8059613
JLo'w
Re-fonte de l'app...
|
1
2
|
package com.example.app_10p5;
|
e9b6c14d
JLo'w
Passage au suppor...
|
3
|
import android.app.Activity;
|
76de4d29
JLo'w
Connexion et NFC ...
|
4
|
import android.app.Fragment;
|
3c5d3089
JLo'w
Work in progress ...
|
5
6
|
import android.app.FragmentManager;
import android.app.FragmentTransaction;
|
76de4d29
JLo'w
Connexion et NFC ...
|
7
|
import android.app.PendingIntent;
|
c8059613
JLo'w
Re-fonte de l'app...
|
8
|
import android.content.Intent;
|
e274d65a
JLo'w
Meilleur vérifica...
|
9
|
import android.content.SharedPreferences;
|
0aec73b6
JLo'w
Petit changement ...
|
10
|
import android.graphics.drawable.ColorDrawable;
|
76de4d29
JLo'w
Connexion et NFC ...
|
11
|
import android.nfc.NfcAdapter;
|
c8059613
JLo'w
Re-fonte de l'app...
|
12
|
import android.os.Bundle;
|
e274d65a
JLo'w
Meilleur vérifica...
|
13
|
import android.preference.PreferenceManager;
|
76de4d29
JLo'w
Connexion et NFC ...
|
14
|
import android.support.design.widget.Snackbar;
|
c8059613
JLo'w
Re-fonte de l'app...
|
15
|
import android.support.v4.view.ViewPager;
|
e274d65a
JLo'w
Meilleur vérifica...
|
16
|
import android.text.TextUtils;
|
0aec73b6
JLo'w
Petit changement ...
|
17
18
19
|
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
|
c8059613
JLo'w
Re-fonte de l'app...
|
20
|
import android.view.View;
|
76de4d29
JLo'w
Connexion et NFC ...
|
21
|
import android.widget.EditText;;
|
93f90e35
JLo'w
NFC et foreground
|
22
23
|
import android.widget.Toast;
|
c1f92981
JLo'w
Implémentation de...
|
24
25
26
|
import org.json.JSONObject;
import java.net.URL;
|
e274d65a
JLo'w
Meilleur vérifica...
|
27
|
import java.net.URLEncoder;
|
c1f92981
JLo'w
Implémentation de...
|
28
29
|
import java.util.HashMap;
|
c8059613
JLo'w
Re-fonte de l'app...
|
30
31
|
/**
|
fde33444
JLo'w
Update header ave...
|
32
|
* Created by Jean-loup Beaussart on 24/04/2016.
|
c8059613
JLo'w
Re-fonte de l'app...
|
33
|
*/
|
3c5d3089
JLo'w
Work in progress ...
|
34
|
public class MainActivite extends Activity implements ASyncResponse, main_tab_frag.OnFragmentInteractionListener {
|
c8059613
JLo'w
Re-fonte de l'app...
|
35
|
|
520cecde
JLo'w
Un petit plus, un...
|
36
37
38
39
40
41
|
public static final int STATE_RIEN = 0;
public static final int STATE_COMMANDE = 3;
public static final int STATE_VIDANGE = 4;
public static final int STATE_RECHARGEMENT = 2;
public static final int STATE_CREATION_COMPTE = 1;
public static final int STATE_CONNEXION = 5;
|
e274d65a
JLo'w
Meilleur vérifica...
|
42
|
|
520cecde
JLo'w
Un petit plus, un...
|
43
44
45
46
|
public static final long EXPIRATION = 1000*60*10;
private int mState;
private String mToken;
|
8cd8911a
JLo'w
Connexion enfin f...
|
47
|
private int mDroit;
|
520cecde
JLo'w
Un petit plus, un...
|
48
|
private long mTimeToken;
|
8cd8911a
JLo'w
Connexion enfin f...
|
49
|
private String mUser;
|
520cecde
JLo'w
Un petit plus, un...
|
50
|
|
76de4d29
JLo'w
Connexion et NFC ...
|
51
52
|
private NfcAdapter mNfcAdapter;
|
c8059613
JLo'w
Re-fonte de l'app...
|
53
54
55
56
|
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.layout_main);
|
e274d65a
JLo'w
Meilleur vérifica...
|
57
|
PreferenceManager.setDefaultValues(this, R.xml.preferences, false);
|
520cecde
JLo'w
Un petit plus, un...
|
58
|
|
efd095eb
JLo'w
No more joke
|
59
|
setTitle(getResources().getString(R.string.app_name));
|
fc1fed0d
JLo'w
Restons cohérent
|
60
|
|
520cecde
JLo'w
Un petit plus, un...
|
61
62
|
mState = STATE_RIEN;
mTimeToken = -1;
|
b6313643
JLo'w
Déconnexion + ges...
|
63
|
mToken = "";
|
520cecde
JLo'w
Un petit plus, un...
|
64
|
|
0aec73b6
JLo'w
Petit changement ...
|
65
|
getActionBar().setBackgroundDrawable(new ColorDrawable(getResources().getColor(R.color.colorPrimary)));
|
76de4d29
JLo'w
Connexion et NFC ...
|
66
|
mNfcAdapter = NfcAdapter.getDefaultAdapter(getApplicationContext());
|
0aec73b6
JLo'w
Petit changement ...
|
67
|
|
2681581a
JLo'w
menu pour changer...
|
68
69
70
|
if(savedInstanceState == null){
FragmentManager fragmentManager = getFragmentManager();
FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction();
|
76de4d29
JLo'w
Connexion et NFC ...
|
71
|
ConnectionFragment fragment = new ConnectionFragment();
|
2681581a
JLo'w
menu pour changer...
|
72
73
74
75
76
77
78
79
80
81
|
fragmentTransaction.add(R.id.fragment_container, fragment);
fragmentTransaction.commit();
}
else{
mTimeToken = savedInstanceState.getLong("timeToken");
mToken = savedInstanceState.getString("token");
mState = savedInstanceState.getInt("state");
mUser = savedInstanceState.getString("user");
mDroit = savedInstanceState.getInt("droit");
}
|
c8059613
JLo'w
Re-fonte de l'app...
|
82
83
|
}
|
c66109e1
JLo'w
Ajout du code des...
|
84
|
@Override
|
0aec73b6
JLo'w
Petit changement ...
|
85
86
87
88
89
90
91
92
93
|
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
inflater.inflate(R.menu.menu, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// Handle item selection
|
e274d65a
JLo'w
Meilleur vérifica...
|
94
95
|
if(item.getItemId() == R.id.action_settings){
getFragmentManager().beginTransaction().replace(R.id.fragment_container, new SettingsFragment()).addToBackStack("settings").commit();
|
2681581a
JLo'w
menu pour changer...
|
96
|
}
|
28dc4009
JLo'w
Déconnexion !!!!!
|
97
98
99
|
else if(item.getItemId() == R.id.action_disconnect){
disconnect();
}
|
2681581a
JLo'w
menu pour changer...
|
100
101
|
return super.onOptionsItemSelected(item);
|
0aec73b6
JLo'w
Petit changement ...
|
102
103
104
|
}
@Override
|
3c5d3089
JLo'w
Work in progress ...
|
105
106
107
108
109
|
public void onFragmentInteraction(String s){
}
@Override
|
c66109e1
JLo'w
Ajout du code des...
|
110
111
112
113
114
115
116
117
118
119
|
public void onSaveInstanceState(Bundle savedInstanceState){
savedInstanceState.putString("token", mToken);
savedInstanceState.putInt("state", mState);
savedInstanceState.putString("user", mUser);
savedInstanceState.putInt("droit", mDroit);
savedInstanceState.putLong("timeToken", mTimeToken);
super.onSaveInstanceState(savedInstanceState);
}
|
76de4d29
JLo'w
Connexion et NFC ...
|
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
|
@Override
public void onPause() {
stopForegroundDispatch(this, mNfcAdapter);
super.onPause();
}
@Override
public void onResume() {
super.onResume();
setupForegroundDispatch(this, mNfcAdapter);
}
public static void setupForegroundDispatch(final Activity activity, NfcAdapter adapter){
if(adapter != null){
final Intent intent = new Intent(activity.getApplicationContext(), activity.getClass());
intent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);
final PendingIntent pendingIntent = PendingIntent.getActivity(activity.getApplicationContext(), 0, intent, 0);
adapter.enableForegroundDispatch(activity, pendingIntent, null, null);
}
else{
Toast.makeText(activity, "Impossible d'initialiser le NFC", Toast.LENGTH_SHORT).show();
}
}
public static void stopForegroundDispatch(final Activity activity, NfcAdapter adapter) {
if(adapter != null){
adapter.disableForegroundDispatch(activity);
}
else{
Toast.makeText(activity, "Impossible d'initialiser le NFC", Toast.LENGTH_SHORT).show();
}
}
|
c66109e1
JLo'w
Ajout du code des...
|
153
|
public void valideCreationCompte(View v){
|
e274d65a
JLo'w
Meilleur vérifica...
|
154
|
if((TextUtils.getTrimmedLength(mToken) == 30) && ((System.currentTimeMillis() - mTimeToken) < EXPIRATION)) {
|
c66109e1
JLo'w
Ajout du code des...
|
155
156
157
|
EditText champMontant = (EditText) findViewById(R.id.creation_montant);
float montant = 0.0f;
|
e274d65a
JLo'w
Meilleur vérifica...
|
158
159
160
161
162
163
164
165
166
167
168
169
170
|
if(!TextUtils.isEmpty(champMontant.getText().toString())){
try{
montant = Float.parseFloat(champMontant.getText().toString());
}
catch (Throwable t){
Toast.makeText(this, "Remplir le champ montant avec un nombre: " + t.toString(), Toast.LENGTH_LONG).show();
}
if(mDroit >= 1){
if((montant > 0.0f) && (montant < 200.0f)){
mState = STATE_CREATION_COMPTE;
champMontant.setText(null);
|
76de4d29
JLo'w
Connexion et NFC ...
|
171
172
173
174
175
176
177
178
179
180
|
Bundle b = new Bundle();
b.putString("token", mToken);
b.putInt("state", mState);
b.putFloat("montant", montant);
NFCFragment nfc = new NFCFragment();
nfc.setArguments(b);
getFragmentManager().beginTransaction().replace(R.id.fragment_container, nfc).addToBackStack(null).commit();
|
e274d65a
JLo'w
Meilleur vérifica...
|
181
182
183
184
185
186
187
188
|
}
else{
Toast.makeText(this, "Valeur incorrecte.", Toast.LENGTH_LONG).show();
}
}
else{
Toast.makeText(this, "Droit insuffisant.", Toast.LENGTH_LONG).show();
}
|
c66109e1
JLo'w
Ajout du code des...
|
189
190
|
}
else{
|
e274d65a
JLo'w
Meilleur vérifica...
|
191
|
champMontant.setError("Montant requis.");
|
c66109e1
JLo'w
Ajout du code des...
|
192
193
194
|
}
}
else{
|
28dc4009
JLo'w
Déconnexion !!!!!
|
195
|
disconnect();
|
c66109e1
JLo'w
Ajout du code des...
|
196
197
198
|
}
}
|
c8059613
JLo'w
Re-fonte de l'app...
|
199
200
|
public void valideCommande(View v)
{
|
e274d65a
JLo'w
Meilleur vérifica...
|
201
|
if((TextUtils.getTrimmedLength(mToken) == 30) && ((System.currentTimeMillis() - mTimeToken) < EXPIRATION)) {
|
b6313643
JLo'w
Déconnexion + ges...
|
202
|
if(mDroit >= 1){
|
520cecde
JLo'w
Un petit plus, un...
|
203
|
mState = STATE_COMMANDE;
|
76de4d29
JLo'w
Connexion et NFC ...
|
204
205
206
|
Bundle b = new Bundle();
b.putString("token", mToken);
b.putInt("state", mState);
|
76de4d29
JLo'w
Connexion et NFC ...
|
207
208
|
NFCFragment nfc = new NFCFragment();
|
76de4d29
JLo'w
Connexion et NFC ...
|
209
|
|
b6313643
JLo'w
Déconnexion + ges...
|
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
|
switch (v.getId()){
case R.id.commande_validation:
EditText champMontant = (EditText) findViewById(R.id.commande_prix);
float montant = 0.0f;
try{
montant = Float.parseFloat(champMontant.getText().toString().replace(",", "."));
}
catch (Throwable t)
{
Toast.makeText(this, "Remplir le prix avec un nombre: " + t.toString(), Toast.LENGTH_SHORT).show();
}
if ((montant > 0.0f) && (montant < 200.0f)) {
champMontant.setText(null);
b.putFloat("montant", montant);
b.putInt("quantite", 0);
}
else{
Toast.makeText(this, "Valeur incorrecte.", Toast.LENGTH_SHORT).show();
}
break;
case R.id.button1:
b.putInt("quantite", 1);
break;
case R.id.button2:
b.putInt("quantite", 2);
break;
case R.id.button3:
b.putInt("quantite", 3);
break;
case R.id.button4:
b.putInt("quantite", 4);
break;
case R.id.button5:
b.putInt("quantite", 5);
break;
case R.id.button6:
b.putInt("quantite", 6);
break;
}
nfc.setArguments(b);
|
76de4d29
JLo'w
Connexion et NFC ...
|
252
|
getFragmentManager().beginTransaction().replace(R.id.fragment_container, nfc).addToBackStack(null).commit();
|
520cecde
JLo'w
Un petit plus, un...
|
253
|
}
|
c66109e1
JLo'w
Ajout du code des...
|
254
|
else{
|
b6313643
JLo'w
Déconnexion + ges...
|
255
|
Toast.makeText(this, "Droit insuffisant.", Toast.LENGTH_SHORT).show();
|
c66109e1
JLo'w
Ajout du code des...
|
256
|
}
|
520cecde
JLo'w
Un petit plus, un...
|
257
258
|
}
else{
|
28dc4009
JLo'w
Déconnexion !!!!!
|
259
|
disconnect();
|
520cecde
JLo'w
Un petit plus, un...
|
260
261
262
263
264
|
}
}
public void valideRechargement(View v)
{
|
e274d65a
JLo'w
Meilleur vérifica...
|
265
|
if((TextUtils.getTrimmedLength(mToken) == 30) && ((System.currentTimeMillis() - mTimeToken) < EXPIRATION)) {
|
c66109e1
JLo'w
Ajout du code des...
|
266
267
268
|
EditText champMontant = (EditText) findViewById(R.id.rechargement_champ_montant);
float montant = 0.0f;
|
e274d65a
JLo'w
Meilleur vérifica...
|
269
270
271
272
273
274
275
276
277
278
279
280
281
|
if(!TextUtils.isEmpty(champMontant.getText().toString())){
try{
montant = Float.parseFloat(champMontant.getText().toString());
}
catch (Throwable t){
Toast.makeText(this, "Remplir le champ montant avec un nombre: " + t.toString(), Toast.LENGTH_LONG).show();
}
if(mDroit >= 2){
if((montant > 0.0f) && (montant < 200.0f)){
mState = STATE_RECHARGEMENT;
champMontant.setText(null);
|
76de4d29
JLo'w
Connexion et NFC ...
|
282
283
284
285
286
287
288
289
290
|
Bundle b = new Bundle();
b.putString("token", mToken);
b.putInt("state", mState);
b.putFloat("montant", montant);
NFCFragment nfc = new NFCFragment();
nfc.setArguments(b);
getFragmentManager().beginTransaction().replace(R.id.fragment_container, nfc).addToBackStack(null).commit();
|
e274d65a
JLo'w
Meilleur vérifica...
|
291
292
293
294
295
296
297
298
|
}
else{
Toast.makeText(this, "Valeur incorrecte.", Toast.LENGTH_LONG).show();
}
}
else{
Toast.makeText(this, "Droit insuffisant.", Toast.LENGTH_LONG).show();
}
|
c66109e1
JLo'w
Ajout du code des...
|
299
300
|
}
else{
|
e274d65a
JLo'w
Meilleur vérifica...
|
301
|
champMontant.setError("Montant requis.");
|
c66109e1
JLo'w
Ajout du code des...
|
302
|
}
|
520cecde
JLo'w
Un petit plus, un...
|
303
304
|
}
else{
|
28dc4009
JLo'w
Déconnexion !!!!!
|
305
|
disconnect();
|
520cecde
JLo'w
Un petit plus, un...
|
306
307
308
309
310
311
312
313
|
}
}
public void valideConnection(View v)
{
EditText viewUser = (EditText) findViewById(R.id.connection_username);
EditText viewPsw = (EditText) findViewById(R.id.connection_password);
|
c1f92981
JLo'w
Implémentation de...
|
314
315
316
|
String user = viewUser.getText().toString();
String password = viewPsw.getText().toString();
|
e274d65a
JLo'w
Meilleur vérifica...
|
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
|
if (!TextUtils.isEmpty(user)) {
if(!TextUtils.isEmpty(password)){
mState = STATE_CONNEXION;
viewUser.setText(null);
viewPsw.setText(null);
try{
SharedPreferences settings = PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
URL url = new URL(settings.getString("server_address", null) + "api/utilisateur/connexion");
HashMap<String, String> param = new HashMap<String, String>();
param.put("login", URLEncoder.encode(user, "UTF-8"));
param.put("mdp", URLEncoder.encode(password, "UTF-8"));
NetworkThread nt = new NetworkThread(url, param);
nt.delegate = this;
nt.execute();
}
catch (Throwable t) {
Toast.makeText(this, "Erreur: " + t.toString(), Toast.LENGTH_LONG).show();
System.out.println("Exception: " + t.toString());
}
|
c1f92981
JLo'w
Implémentation de...
|
338
|
}
|
e274d65a
JLo'w
Meilleur vérifica...
|
339
340
|
else {
viewPsw.setError("Mot de passe requis.");
|
c1f92981
JLo'w
Implémentation de...
|
341
|
}
|
520cecde
JLo'w
Un petit plus, un...
|
342
|
}
|
c66109e1
JLo'w
Ajout du code des...
|
343
|
else{
|
e274d65a
JLo'w
Meilleur vérifica...
|
344
|
viewUser.setError("Utilisateur requis.");
|
c66109e1
JLo'w
Ajout du code des...
|
345
|
}
|
520cecde
JLo'w
Un petit plus, un...
|
346
|
}
|
8d573e63
JLo'w
Mise en place de ...
|
347
348
|
public void valideVidange(View v){
|
e274d65a
JLo'w
Meilleur vérifica...
|
349
|
if((TextUtils.getTrimmedLength(mToken) == 30) && ((System.currentTimeMillis() - mTimeToken) < EXPIRATION)) {
|
8d573e63
JLo'w
Mise en place de ...
|
350
351
352
|
if((mDroit >= 2)){
mState = STATE_VIDANGE;
|
76de4d29
JLo'w
Connexion et NFC ...
|
353
354
355
356
357
358
359
360
|
Bundle b = new Bundle();
b.putString("token", mToken);
b.putInt("state", mState);
NFCFragment nfc = new NFCFragment();
nfc.setArguments(b);
getFragmentManager().beginTransaction().replace(R.id.fragment_container, nfc).addToBackStack(null).commit();
|
8d573e63
JLo'w
Mise en place de ...
|
361
362
363
364
365
366
|
}
else{
Toast.makeText(this, "Droit insuffisant.", Toast.LENGTH_LONG).show();
}
}
else{
|
28dc4009
JLo'w
Déconnexion !!!!!
|
367
|
disconnect();
|
8d573e63
JLo'w
Mise en place de ...
|
368
369
|
}
}
|
520cecde
JLo'w
Un petit plus, un...
|
370
371
|
@Override
|
76de4d29
JLo'w
Connexion et NFC ...
|
372
373
374
|
protected void onNewIntent(Intent intent){
super.onNewIntent(intent);
Fragment frag = getFragmentManager().findFragmentById(R.id.fragment_container);
|
4ef24041
JLo'w
Retour du JSONObj...
|
375
|
|
76de4d29
JLo'w
Connexion et NFC ...
|
376
377
378
|
if(mState != STATE_RIEN && frag instanceof NFCFragment){
NFCFragment nfc = (NFCFragment) frag;
nfc.handleIntent(intent);
|
520cecde
JLo'w
Un petit plus, un...
|
379
|
}
|
c8059613
JLo'w
Re-fonte de l'app...
|
380
|
}
|
93f90e35
JLo'w
NFC et foreground
|
381
|
|
c1f92981
JLo'w
Implémentation de...
|
382
383
384
|
/* Retour du network thread */
@Override
public void processFinish(JSONObject output) {
|
76de4d29
JLo'w
Connexion et NFC ...
|
385
|
|
96cf88d2
JLo'w
Réception de JSON...
|
386
387
|
if(output.length() != 0){
try{
|
8cd8911a
JLo'w
Connexion enfin f...
|
388
|
if(output.get("status").toString().equals("ok")){
|
76de4d29
JLo'w
Connexion et NFC ...
|
389
390
|
switch (mState){
case STATE_COMMANDE:
|
76de4d29
JLo'w
Connexion et NFC ...
|
391
392
393
394
395
396
397
398
399
400
401
402
403
|
break;
case STATE_CONNEXION:
mToken = output.get("jeton").toString();
mTimeToken = System.currentTimeMillis();
mDroit = output.getInt("droit");
mUser = output.get("login").toString();
Snackbar.make(findViewById(R.id.coordinator), "Bonjour " + mUser + " vous êtes connecté pour " + EXPIRATION / (1000 * 60) + " minutes.", Snackbar.LENGTH_SHORT).show();
getFragmentManager().beginTransaction().replace(R.id.fragment_container, new main_tab_frag()).commit();
break;
case STATE_CREATION_COMPTE:
Snackbar.make(findViewById(R.id.coordinator), "Client créé avec un solde de " + output.get("soldeNouveau") + "€", Snackbar.LENGTH_INDEFINITE).show();
break;
case STATE_RECHARGEMENT:
|
76de4d29
JLo'w
Connexion et NFC ...
|
404
405
|
break;
case STATE_VIDANGE:
|
76de4d29
JLo'w
Connexion et NFC ...
|
406
407
408
409
410
411
|
break;
case STATE_RIEN:
default:
Toast.makeText(this, "WTF, le cancer est dans l'application!!", Toast.LENGTH_LONG).show();
break;
}
|
96cf88d2
JLo'w
Réception de JSON...
|
412
413
|
}
else{
|
76de4d29
JLo'w
Connexion et NFC ...
|
414
|
Toast.makeText(this, "Erreur: " + output.get("status"), Toast.LENGTH_LONG).show();
|
96cf88d2
JLo'w
Réception de JSON...
|
415
416
417
|
}
}
catch(Throwable t){
|
8cd8911a
JLo'w
Connexion enfin f...
|
418
|
Toast.makeText(this, "WTF, le cancer est dans l'application!!" + t.toString(), Toast.LENGTH_LONG).show();
|
96cf88d2
JLo'w
Réception de JSON...
|
419
420
421
422
423
|
}
}
else{
Toast.makeText(this, "Impossible de se connecter au serveur", Toast.LENGTH_LONG).show();
}
|
76de4d29
JLo'w
Connexion et NFC ...
|
424
425
426
|
mState = STATE_RIEN;
getFragmentManager().popBackStack();
|
c1f92981
JLo'w
Implémentation de...
|
427
|
}
|
3c5d3089
JLo'w
Work in progress ...
|
428
429
430
431
432
433
434
435
|
public String getToken(){
return mToken;
}
public long getTimeToken(){
return mTimeToken;
}
|
28dc4009
JLo'w
Déconnexion !!!!!
|
436
437
|
public void disconnect(){
|
b6313643
JLo'w
Déconnexion + ges...
|
438
|
mToken = "";
|
28dc4009
JLo'w
Déconnexion !!!!!
|
439
440
|
mDroit = 0;
mUser = null;
|
fc1fed0d
JLo'w
Restons cohérent
|
441
|
mTimeToken = -1;
|
76de4d29
JLo'w
Connexion et NFC ...
|
442
|
mState = STATE_RIEN;
|
28dc4009
JLo'w
Déconnexion !!!!!
|
443
|
|
b6313643
JLo'w
Déconnexion + ges...
|
444
445
|
Snackbar.make(findViewById(R.id.coordinator), "Veuillez vous reconnecter", Snackbar.LENGTH_SHORT).show();
getFragmentManager().beginTransaction().replace(R.id.fragment_container, new ConnectionFragment()).commit();
|
28dc4009
JLo'w
Déconnexion !!!!!
|
446
|
}
|
c8059613
JLo'w
Re-fonte de l'app...
|
447
|
}
|