CERCA
PER MODELLO
FullScreen Chatbox! :)

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

Pagina 5 di 5 primaprima ... 345
Visualizzazione dei risultati da 41 a 49 su 49
Discussione:

[ECLIPSE] Copia db sqlite preesistente da 'assets' a /data/data/..

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. #41
    Senior Droid L'avatar di frank17next


    Registrato dal
    Jan 2010
    Località
    Campobasso
    Messaggi
    739
    Smartphone
    GNexus, Galaxy Note, GT 10.1

    Ringraziamenti
    16
    Ringraziato 143 volte in 102 Posts
    Predefinito

    Noooo... per carità, edita i tuoi post circondando il codice che hai postato con i tag CODE e /CODE (tra parantesi quadre), aumenterai drasticamente la leggibilità degli stessi
    Ad ogni modo, provo ad importare in eclipse questo progetto di prova che ho preparato:
    Esegue una copia del db in assets se manca sul device, lo apre e visualizza il contenuto di una tabella in un textview dell'activity principale.
    Spero possa fare chiarezza sull'utilizzo di una classe SQLiteAdpater (inclusa nel projct)
    Nexus 6 - 5.0.1 Stock
    Nexus 5 - 5.0.1 Stock + Root
    Galaxy Note 3 GT-N9005 - 4.4.4 Stock + Root
    Galaxy Tab 10.1 Slim P7500 - [JB] CyanogenMod 10 4.1.2 Pershoot (Nightly 20121013)
    ------------------------------------------------------------------------
    https://sites.google.com/site/frank17next/

  2.  
  3. #42
    Baby Droid


    Registrato dal
    Jun 2012
    Messaggi
    13

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Sorry, e' la prima volta che posto del codice su di un forum. Grazie invece per il project, lo provo subito domani mattina. Sei stato davvero gentilissimo. Complimenti per il bel sito, che ho avuto occasione di scoprire meglio in questi giorni.

  4. #43
    Senior Droid L'avatar di frank17next


    Registrato dal
    Jan 2010
    Località
    Campobasso
    Messaggi
    739
    Smartphone
    GNexus, Galaxy Note, GT 10.1

    Ringraziamenti
    16
    Ringraziato 143 volte in 102 Posts
    Predefinito

    Quote Originariamente inviato da Tuzzo77 Visualizza il messaggio
    Sorry, e' la prima volta che posto del codice su di un forum. Grazie invece per il project, lo provo subito domani mattina. Sei stato davvero gentilissimo. Complimenti per il bel sito, che ho avuto occasione di scoprire meglio in questi giorni.
    thank u
    Nexus 6 - 5.0.1 Stock
    Nexus 5 - 5.0.1 Stock + Root
    Galaxy Note 3 GT-N9005 - 4.4.4 Stock + Root
    Galaxy Tab 10.1 Slim P7500 - [JB] CyanogenMod 10 4.1.2 Pershoot (Nightly 20121013)
    ------------------------------------------------------------------------
    https://sites.google.com/site/frank17next/

  5. #44
    Baby Droid


    Registrato dal
    Jun 2012
    Messaggi
    13

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Allora son finalmente riuscito a vedere il mio db. Confermo che era un problema di versione di SQLite perchè con il tuo progetto funzionava tutto, mentre appena copiavo il mio db crashava. Ho convertito il file CSV in Sqlite con questo freeware comodissimo che funziona meglio del Sql Browse Explorer: TkSQLite - mynote.
    Adesso il database è visibile dalle DDMS e riesco a caricare con la query i dati.
    Grazie mille boss Franck

  6. #45
    Baby Droid


    Registrato dal
    Jun 2012
    Messaggi
    13

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Buongiorno Frank

    ora avrei la necessità di fare delle query filtrando sul DB. Ovvero ho aggiunto un Editext nel layout e vorrei che appena l'utente inserisce un valore mi venga "rinfrescata" la listview.
    Come faccio a forzare un aggiornamento dei dati della query. C'è un update dell'adapter?

    Grazie mille

  7. #46
    Senior Droid L'avatar di frank17next


    Registrato dal
    Jan 2010
    Località
    Campobasso
    Messaggi
    739
    Smartphone
    GNexus, Galaxy Note, GT 10.1

    Ringraziamenti
    16
    Ringraziato 143 volte in 102 Posts
    Predefinito

    Quote Originariamente inviato da Tuzzo77 Visualizza il messaggio
    Buongiorno Frank

    ora avrei la necessità di fare delle query filtrando sul DB. Ovvero ho aggiunto un Editext nel layout e vorrei che appena l'utente inserisce un valore mi venga "rinfrescata" la listview.
    Come faccio a forzare un aggiornamento dei dati della query. C'è un update dell'adapter?

    Grazie mille
    Ciao Tuzzo77, replico la risposta anche qui :

    per cominciare - nella classe dove popoli la listview all'avvio della classe - ti conviene inglobare il codice di popolamento lista in una procedura (quindi la metti in coda alla classe, ma prima dell'ultima parentesi graffa dell'end-class ovviamente) e la chiami, chessò 'caricaListView. A quel punto, in testa alla classe, dove ora c'è ancora qul codice di popolamento lista, richiami semplicemente caricaListView(). Dopo che ti sei assicurato che funziona, nell'intercettare l'onEdit dell'editText richiami caricaListView passando come valore del LIKE %valore% il parametro del Text attuale dell'editText, tipo ad esempio caricaListView(EditText1.getText().ToString())

    Il metodo di SQLiteAdapter che ritorna un Cursor (da utilizzare in un SimpleCursorAdapter per popolare la ListView), dovrà essere del tipo:

    codice:
    public Cursor selectMieiValori(String pLike){	
    	 String query = "SELECT campi FROM tuaTabella WHERE nomecampo like %" + pLike + "%";
    	 return sqLiteDatabase.rawQuery(query, null);	 
    }
    e dovrà alimentare la ListView ad ogni evento edit catturato

    Ultima modifica di frank17next; 27-06-12 alle 18:42
    Nexus 6 - 5.0.1 Stock
    Nexus 5 - 5.0.1 Stock + Root
    Galaxy Note 3 GT-N9005 - 4.4.4 Stock + Root
    Galaxy Tab 10.1 Slim P7500 - [JB] CyanogenMod 10 4.1.2 Pershoot (Nightly 20121013)
    ------------------------------------------------------------------------
    https://sites.google.com/site/frank17next/

  8. #47
    Baby Droid


    Registrato dal
    Mar 2013
    Messaggi
    22

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Ciao a tutti, so che è passato un pò di tempo, ma vorrei un aiuto in merito alla seguente discussione
    Devo richiamare un database esistente da una sottoattività, ma non ci riesco
    il codice della mia attività secondaria(la quale viene lanciata con il metodo startActivity dall'attività principale, e qui dovrò copiare appunto il database dalla cartella assets in databases(che non me lo crea) per poi effettuare delle query sul database stesso

    dove devo inserire
    SQLiteAdapter mioadapter = new SQLiteAdapter();
    e invece per effettuare la query devo creare una nuova classe o una nuova activity da lanciare per il codice Applicazione1Activity che è presente nella prima pagina di questa discussione
    Grazie mille

  9. #48
    Baby Droid


    Registrato dal
    Mar 2011
    Messaggi
    4

    Ringraziamenti
    0
    Ringraziato 0 volte in 0 Posts
    Predefinito

    Quote Originariamente inviato da frank17next Visualizza il messaggio
    Ciao,
    intendo dire che quando nella main richiami openToRead(), di fatto utilizzi il metodo sqLiteHelper.getReadableDatabase(); che -se non trova il database già presente (cioè già copiato sul device) ne crea uno vuoto con soltanto la tabella android_metadata.
    Prova subito a fare la query su quella tabella e vedi se aggiri l'errore table not found.
    Se riesce vuol dire che è quello il caso.
    Ancora: prova a rimuovere dal path del db /databases, copialo direttamente in /data/data/tuaapp/
    Ciao, spero che tu mi possa dare qualche dritta.
    Ho seguito il tuo esempio e dopo aver copiato il db da assets all'esecuzione della query il sistema risponde dicendo che non trova la tabella.
    Il db da importare è stato creato con SQLite Manager x Firefox.
    Forse non è compatibile con il db system di android?
    Ed eventualmente con quale strumento potrei creare e popolare il db da importare nell'applicazione?
    (In realtà ho notato che lo stesso problema viene fuori se copio il db direttamente in .../databases in ECLIPSE.
    Questo non motiverebbe la copia da codice.)
    Grazie in anticipo per la risposta

  10. #49
    Senior Droid


    Registrato dal
    May 2010
    Località
    Rivoli
    Messaggi
    426

    Ringraziamenti
    6
    Ringraziato 48 volte in 47 Posts
    Predefinito

    Per creare il db, io ho usato con successo il SQLite per Windows a riga di comando, scaricato da questa pagina:
    SQLite Download Page

    Il file è:
    sqlite-shell-win32-x86-3080500.zip

    Link diretto al download:
    http://www.sqlite.org/2014/sqlite-sh...86-3080500.zip

    Al posto tuo, farei delle prove per vedere se il db è stato creato corettamente, prima di infilarlo nell'APK.
    Per aprire il db su Pc io uso SQLite Database Browser:
    SQLite Database Browser | Free Development software downloads at SourceForge.net

    Inoltre, sei sicuro che nel codice android apri correttamente il database?
    Magari il problema è più a monte dell'apertura della tabella

Pagina 5 di 5 primaprima ... 345

Tag per questa discussione

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