Fossi in te con questa libreria e uno spazio FTP creerei un sistema competizione a dropbox e poi ovviamente distribuirei gratuitamente sorgenti sul forum
Purtroppo il riconoscimento vocale di Google non è il massimo Comunque mi sembra che il senso di quello che mi serve si sia capito Quindi se magari qualche buon anima possa risolvere diciamo così Questo esempio logico anche con un piccolo esempio tecnico sarebbe molto molto molto gradito
Anch'io sono contrario al polling, come tutti del resto, ma in certi casi è inevitabile, e questo mi sembra uno di quelli.
Del resto, il polling in questione potrebbe farlo un applicativo b4j installato sui "client" (punti vendita) ed informare tramite notifica l'applicazione da tenere aggiornata.
Quindi potrei agire così almeno lato b4j attivo questo servizio questo servizio mi scatena l'evento 6 il file SQL è cambiato a quel punto lancio la mia query controllo che i totali siano diversi dai totali leggi in precedenza e in quel caso scrivo il DB remoto e fino a qui è tutto ok sembra una cosa molto lineare lato B 4A Come faccio se la mia app è aperta e ad aggiornare i totali Ah video ogni presempio 10-15 secondi
Certo posso leggere i dati posso fare tutte le query che voglio ma non posso toccare il DB né creare trigger all'interno di questo DB ,potrei fare un altro db che acceda a questo ma non so come sincronizzarlo, in sostanza ho l'accesso completo In lettura dei dati che vengono aggiornati da loro sistema diciamo così A ogni vendita effettuata .
Sul versante "finale" (app B4A che riceve dati aggiornati da DB remoto), per evitare la questione polling (immagina una situazione dove centinaia di copie dell'app B4A effettuino contemporaneamente il polling al DB) direi che un semplice FCM o MQTT risolva bene.
Se il "server" centralizzato ravvede la necessità di avvisare di un aggiornamento sui dati (ovvero se gli importi sono variati) prepara un messaggio FCM e lo invia. La/le app B4A in ascolto ricevono la notifica (che potrebbe già contenere i dati utili) e si regolano di conseguenza.
Se usi il Microsoft Sql Server allora hai disponibili gli 'events', sei gia' a cavallo
Sempre ammesso che nel db tu possa creare qualche trigger e qualche events
In sostanza devi creare un 'events' nel db ogni volta che cambia il dato che ti interessa
Da programma esterno puoi 'abbonarti' all'event che ti interessa
Fine
Lato b4a sembra una soluzione ottima.
Supponi pero, che l'app e' chiusa da 1 ora, e nel frattempo i dati sono stati aggiornati 10 volte, appena apro l'app, mi arrivano 10 messaggi?
Se usi il Microsoft Sql Server allora hai disponibili gli 'events', sei gia' a cavallo
Sempre ammesso che nel db tu possa creare qualche trigger e qualche events
In sostanza devi creare un 'events' nel db ogni volta che cambia il dato che ti interessa
Da programma esterno puoi 'abbonarti' all'event che ti interessa
Fine