Add memorizzazione
This commit is contained in:
parent
7d2720c952
commit
58743a8bd5
19
bib.bib
19
bib.bib
@ -24,6 +24,15 @@
|
||||
file = {/home/norangebit/Zotero/storage/RDCN2EQA/android-beacon-library.html}
|
||||
}
|
||||
|
||||
@online{AndroidJetpackAndroid,
|
||||
title = {Android {{Jetpack}} | {{Android Developers}}},
|
||||
url = {https://developer.android.com/jetpack},
|
||||
urldate = {2020-07-10},
|
||||
abstract = {Jetpack is a suite of libraries to help developers follow best practices, reduce boilerplate code, and write code that works consistently across Android versions and devices so that developers can focus on the code they care about.},
|
||||
file = {/home/norangebit/Zotero/storage/X2QST32B/jetpack.html},
|
||||
langid = {english}
|
||||
}
|
||||
|
||||
@online{BroadcastsOverview,
|
||||
title = {Broadcasts Overview},
|
||||
journaltitle = {Android Developers},
|
||||
@ -51,6 +60,16 @@
|
||||
file = {/home/norangebit/Zotero/storage/4SV9VW2H/installation.html}
|
||||
}
|
||||
|
||||
@online{RoomPersistenceLibrary,
|
||||
title = {Room {{Persistence Library}}},
|
||||
journaltitle = {Android Developers},
|
||||
url = {https://developer.android.com/topic/libraries/architecture/room},
|
||||
urldate = {2020-07-10},
|
||||
abstract = {Learn to use the Room Library},
|
||||
file = {/home/norangebit/Zotero/storage/ZU9BFHZW/room.html},
|
||||
langid = {english}
|
||||
}
|
||||
|
||||
@online{ServicesOverview,
|
||||
title = {Services Overview},
|
||||
journaltitle = {Android Developers},
|
||||
|
@ -213,7 +213,31 @@ Per questo motivo si è scelto di utilizzare il livello LOW che permette di rile
|
||||
|
||||
## Memorizzazione
|
||||
|
||||
In base alla modalità di funzionamento l'applicazione deve memorizzare diversi tipi di dati.
|
||||
La gestione della persistenza è stata realizzata attraverso la libreria ***Room*** [@RoomPersistenceLibrary] una componente di *Jetpack* [@AndroidJetpackAndroid], la suite di librerie sopportate da *Google*.
|
||||
*Room* fornisce un layer astratto che permette di operare più facilmente con il database *SQLite* sottostante.
|
||||
|
||||
La memorizzazione dei contatti è avvenuta tramite lo schema riportato nel @lst:contact-data.
|
||||
Questi dati vengono conservati solo nella modalità di funzionamento *B* e *C* poiché nella modalità *A* il contatto viene comunicano immediatamente al server per cui non è necessaria una memorizzazione locale.
|
||||
|
||||
``` {.markdown #lst:contact-data caption="Schema utilizzato per la memorizzazione dei dati di contatto."}
|
||||
- `id`: Int [PrimaryKey | AutoGenerate]
|
||||
- `uuidReceiver`: String
|
||||
- `uuidSender`: String
|
||||
- `rssi`: Int
|
||||
- `txPower`: Int
|
||||
- `timestamp`: Long
|
||||
```
|
||||
|
||||
Nella modalità *C* è necessario memorizzare anche le tck (si veda la @sec:tck per maggiori dettagli) utilizzate nel corso del tempo.
|
||||
Oltre alla memorizzazione della tck, tramite un array di byte, è necessario memorizzare anche l'indice associato ad essa e il timestamp di primo utilizzo.
|
||||
Lo schema utilizzato per la memorizzazione di queste informazioni è riportato nel @lst:tck-data.
|
||||
|
||||
``` {.markdown #lst:tck-data caption="Schema utilizzato per la memorizzazione delle tck."}
|
||||
- `index`: Short [PrimaryKey]
|
||||
- `timestamp`: Long,
|
||||
- `tck`: ByteArray
|
||||
```
|
||||
|
||||
## Rete
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user