Aprire un database di sola lettura direttamente nella cartella degli asset

Ho trovato in questo sito molte domande che chiedono come aprire un file di database situato nella cartella degli asset. Sempre il punto principale della risposta corretta è lo stesso: i database situati negli asset non possono essere aperti poiché tale cartella (come l'integer contenuto dell'APK) è solo in lettura. Pertanto il file di database deve essere copiato altrove prima che possa essere utilizzato ( Nave un'applicazione con un database ).

Tuttavia, cosa succede se il file di database non deve essere modificato? In questo caso non import la restrizione che la cartella asset si legge solo.

  • Dobbiamo copiare Font TTF each volta che vogliamo cambiare font nell'applicazione
  • Ricevi dettagli SMS Dalla sua ID Android
  • Confronto di due editTexts in android
  • NullPointerException: Tentativo di ricall il metodo virtuale 'boolean java.lang.String.equalsIgnoreCase (java.lang.String)' su un riferimento di null riferimento
  • Il path del progetto contiene caratteri non-ASCII android studio
  • Come posso fare un SurfaceView più grande dello schermo?
  • Allora le mie domande sono:

    C'è un modo per aprire un database di sola lettura nella cartella degli asset senza copiarlo prima in un'altra posizione ?

    2 Solutions collect form web for “Aprire un database di sola lettura direttamente nella cartella degli asset”

    Utilizza la bandiera OPEN_READONLY, ad esempio

    SQLiteDatabase.openDatabase(myPath,null,OPEN_READONLY); 

    Qui potete trovare più bandiere

    E penso che dovrai prima copiare il database da qualche altra parte per poterlo aprire.

    Dovrai copiarlo nella cartella dati, quindi leggerai da lì.

    L'Android è un fan Android di Google, tutto su telefoni Android, Android Wear, Android Dev e applicazioni Android Games e così via.