CERCA
PER MODELLO
FullScreen Chatbox! :)

Utente del giorno: 9mm con ben 3 Thanks ricevuti nelle ultime 24 ore
Utente della settimana: 9mm con ben 8 Thanks ricevuti negli ultimi sette giorni
Utente del mese: 9mm con ben 29 Thanks ricevuti nell'ultimo mese

Visualizzazione dei risultati da 1 a 1 su 1
Discussione:

Non riesco a capire il funzionamento del Content Provider

Se questa discussione ti è stata utile, ti preghiamo di lasciare un messaggio di feedback in modo che possa essere preziosa in futuro anche per altri utenti come te!
  1. #1
    Baby Droid


    Registrato dal
    Mar 2018
    Messaggi
    2

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Non riesco a capire il funzionamento del Content Provider

    Buongiorno,

    ho un problema davvero assillante con l'utilizzo ed il funzionamento dei Content Provider, che non sono riuscito a risolvere neppure scaricando esempi da web (che non funzionano come mi attenderei).

    Da poco tempo, mi sto cimentando allo sviluppo delle App Android tramite l'utilizzo di Android Studio.

    Per motivi di lavoro, sto disperatamente tentando di costruire un'APP che, banalmente, permetta di condividere con altri utenti i dati di una (o più) tabella/e SQLITE (es. Clienti, Movimenti, Prodotti) da posizionare in un ambiente condiviso (su Cloud, su Sharepoint, su un Folder IP), permettendo a chiunque possegga la medesima APP di poter effettuare le classiche operazioni CRUD sui records della medesima tabella del DB condiviso; affinché tutti possano aggiornare i records e visualizzarne gli aggiornamenti ..... insomma la classica applicazione gestionale però su Mobile anziché su PC.

    Prima di porre il fatal quesito, ovviamente ho cercato di documentarmi ed ho letto che in ambito APP Android, esistono i cosiddetti Content Provider i quali, a quanto ho capito, sarebbero uno strato software o meglio, degli oggetti che, tramite il loro livello di astrazione, consentono di condividere ed interfacciare le risorse storage con l'APP che deve utilizzarle; siano esse risorse storage pubbliche di sistema (es. Calendari, Contatti) oppure risorse storage dedicate e condivise residenti in remoto su Server, PC, domini, cloud (es. files .db contenenti tabelle applicative SQLlite come Clienti, Prodotti, Studenti, Movimenti, ecc.ecc.).

    Innanzitutto, come già detto, ho scaricato diversi banali esempi di App che utilizzano i Content Provider per scrivere su una tabella ... tuttavia quando installo l'App sul telefonino e la faccio girare, i dati vengono memorizzati soltanto in ambito locale e non condiviso, tant'è che se le installo su altro telefonino, non vedo i dati già scritti sul DB da altro utente, ma riparto daccapo (mi aspetterei in ambiente condiviso che ciascuno veda i records scritti da altri utenti) ...

    ... premesso che, per non sbagliarmi, non tocco minimamente una riga di codice degli esempi (URI compresi), bensì mi limito a compilare gli esempi ed a farli girare su telefonino ... ne deduco che: A) non ho capito la logica del funzionamento dei Content Provider ... B) eseguo manovre errate ... C) forse dovrei customizzare l'esempio inserendo i parametri corretti per puntare le risorse storage condivise (anche se gli URI degli esempi dovrebbero già essere condivisi, quindi non dovrebbero necessitare di ulteriori customizzazioni, altrimenti verrebbero meno gli scopi).

    Da quanto ne so (SEMPRE CHE ABBIA CAPITO BENE), per raggiungere una risorsa storage condivisa (una banale tabella SQLite posta in un file .db) ed effettuare su di essa operazioni CRUD, tramite i Content Provider, occorre necessariamente comporre gli URI con le stringhe dei Domini/Authority ove tali risorse risiedono.

    PRIMA DOMANDA: i dati da condividere ovvero il DB fisico dove risiede ? ... immagino debba risiedere su una risorsa fisica condivisibile, sia essa privata (un server con un indirizzo IP e con dei folders condivisi, un dominio web) ... che gestita da terzi (es. Cloud Aruba, Sharepoint) ...

    SECONDA DOMANDA: nel caso i dati possano anche risiedere in ambiente privato condiviso, posso inserire direttamente nell'URI l'indirizzo IP ed il folder della macchina condivisa ? ... es. \\101.13.41.20\AreaDB\TabellaClienti.db ...

    TERZA DOMANDA: in caso affermativo, se la macchina possiede anche le necessarie grants di accesso (ovvero Login + Password) come faccio a passarle al Content Provider per abilitare la risorsa storage e renderla condivisibile in multi-utenza per le operazioni CRUD di Creazione, Lettura, Scrittura, Delete, Read, Query SQL ?


    Vi ringrazio per ogni possibile suggerimento vorrete dispensarmi.
    Giovanni
    Ultima modifica di GiovanniDP; 01-03-18 alle 12:18

  2.  

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire risposte
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Torna su
Privacy Policy