1. Nessa nossa aplicação, nós vamos precisar fazer um armazenamento local de informações, como as informações dos hábitos e também informações de passagem de página, vamos agora configurar o sqlite para iniciar o seu uso.

  2. Nós vamos primeiro instalar o sqlite, vamos instalar ele e o gerenciados de arquivos que pede na documentação.

    npx expo install expo-file-system expo-asset
    
    npx expo install expo-sqlite
    
  3. Com ele criado, podemos ir na pasta “database” criar um arquivo chamado “index.js”, esse arquivo que vamos criar serve para iniciar o banco de dados. O primeiro “db” é o nome, caso você queira mudar, apenas altere o primeiro db “database → index.js”

    import * as SQLite from "expo-sqlite";
    
    const db = SQLite.openDatabase("db.db");
    
    export default db;
    
  4. Agora, nós vamos usar esse arquivo em todo local que usaremos o db. Nós vamos criar agora uma pasta dentro de src chamda “service”, e dentro dela um arquivo chamado “ChangeNavigation.js”. “Src → Services → ChangeNavigationService.js”

  5. Começamos importar o db, pois como foi dito, sempre que formos usar ele precisamos iniciar o db.

    import db from "../Database";
    
  6. Agora vamos criar a instância que vai fazer a criação da tabela do banco dentro do service. Nós vamos criar a tabela do banco com 3 colunas (id, showHome e appStartData) “Src → services → ChangeNavigationService.js”

    import db from "../Database";
    
    db.transaction((tx) => {
      tx.executeSql(
        "CREATE TABLE IF NOT EXISTS change_navigation (id INTEGER PRIMARY KEY AUTOINCREMENT, showHome TEXT, appStartData TEXT);",
        [],
        (_, error) => {
          console.log(error);
        }
      );
    });