Sqlite
androidx.sqlite
contém interfaces abstratas com implementações básicas
que podem ser usadas para criar bibliotecas que acessam o
SQLite.
É recomendado usar a biblioteca Room, que fornece uma camada de abstração para permitir um acesso mais robusto ao banco de dados, aproveitando toda a capacidade do SQLite.
Atualização mais recente | Versão estável | Candidata a lançamento | Versão Beta | Versão Alfa |
---|---|---|---|---|
11 de janeiro de 2023 | 2.3.0 | - | - | - |
Como declarar dependências
Para adicionar uma dependência ao SQLite, adicione o repositório Maven do Google ao seu projeto. Leia Repositório Maven do Google para ver mais informações.
Adicione as dependências dos artefatos necessários ao arquivo build.gradle
do
seu app ou módulo:
Groovy
dependencies { def sqlite_version = "2.3.0" // Java language implementation implementation "androidx.sqlite:sqlite:$sqlite_version" // Kotlin implementation "androidx.sqlite:sqlite-ktx:$sqlite_version" // Implementation of the AndroidX SQLite interfaces via the Android framework APIs. implementation "androidx.sqlite:sqlite-framework:$sqlite_version" }
Kotlin
dependencies { val sqlite_version = "2.3.0" // Java language implementation implementation("androidx.sqlite:sqlite:$sqlite_version") // Kotlin implementation("androidx.sqlite:sqlite-ktx:$sqlite_version") // Implementation of the AndroidX SQLite interfaces via the Android framework APIs. implementation("androidx.sqlite:sqlite-framework:$sqlite_version") }
Para mais informações sobre dependências, consulte Adicionar dependências de build.
Feedback
Seu feedback ajuda a melhorar o Jetpack. Avise se você descobrir novos problemas ou tiver ideias para melhorar esta biblioteca. Consulte os problemas conhecidos nesta biblioteca antes de criar um novo. Adicione seu voto a um problema clicando no botão de estrela.
Consulte a documentação do Issue Tracker para saber mais.
Versão 2.3.0
Versão 2.3.0
11 de janeiro de 2023
Lançamento de androidx.sqlite:sqlite:2.3.0
, androidx.sqlite:sqlite-framework:2.3.0
e androidx.sqlite:sqlite-ktx:2.3.0
. A versão 2.3.0 contém estas confirmações.
Mudanças importantes desde a versão 2.2.0
- As origens
androidx.sqlite
do grupo de bibliotecas foram convertidas de Java para Kotlin. Como oandroidx.sqlite
tem algumas anotações de nulidade ausentes, é possível que você encontre erros de incompatibilidade de origem caso as origens estejam em Kotlin e o código esteja inferindo a nulidade errada. Além disso, alguns métodos getter foram convertidos em propriedades que exigem a sintaxe de acesso a propriedades em arquivos Kotlin. Registre um bug no caso de incompatibilidades significativas (b/240707042). - Uma API foi adicionada à configuração do
SupportSQLite's
para permitir a perda de dados durante o mecanismo de recuperação (I1b830, b/215592732). - Uma API para bloqueio e uso de vários processos no nível do
FrameworkSQLite*
foi adicionada para proteger a primeira criação e migração de bancos de dados de vários processos (Ied267, b/193182592).
Versão 2.3.0-rc01
7 de dezembro de 2022
Lançamento de androidx.sqlite:sqlite:2.3.0-rc01
, androidx.sqlite:sqlite-framework:2.3.0-rc01
e androidx.sqlite:sqlite-ktx:2.3.0-rc01
. A versão 2.3.0-rc01 contém estas confirmações.
Correções de bugs
- O problema da NPE em
SupportSQLiteQueryBuilder
nas colunas anuláveis foi corrigido (Ica8f5).
Versão 2.3.0-beta02
9 de novembro de 2022
Lançamento de androidx.sqlite:sqlite:2.3.0-beta02
, androidx.sqlite:sqlite-framework:2.3.0-beta02
e androidx.sqlite:sqlite-ktx:2.3.0-beta02
. A versão 2.3.0-beta02 contém estas confirmações.
- Foram corrigidas várias APIs que usam argumentos de consulta de invariante (
Array<Any?>
) a contravariante (Array<out Any?>
) para corresponder ao comportamento da matriz do Java (b/253531073).
Versão 2.3.0-beta01
5 de outubro de 2022
Lançamento de androidx.sqlite:sqlite:2.3.0-beta01
, androidx.sqlite:sqlite-framework:2.3.0-beta01
e androidx.sqlite:sqlite-ktx:2.3.0-beta01
. A versão 2.3.0-beta01 contém estas confirmações.
Mudanças na API
- Todas as origens android.sqlite foram convertidas de Java em Kotlin (b/240707042).
- Uma mudança notável na conversão é que estas funções getter se tornaram propriedades:
- Em
SupportSQLiteDatabase
: attachedDbs
isDatabaseIntegrityOk
isDbLockedByCurrentThread
isOpen
isReadOnly
isWriteAheadLoggingEnabled
maximumSize
pageSize
path
version
- Em
SupportSQLiteOpenHelper
: databaseName
readableDatabase
writableDatabase
- Em
Versão 2.3.0-alpha05
24 de agosto de 2022
Lançamento de androidx.sqlite:sqlite:2.3.0-alpha05
, androidx.sqlite:sqlite-framework:2.3.0-alpha05
e androidx.sqlite:sqlite-ktx:2.3.0-alpha05
. A versão 2.3.0-alpha05 contém estas confirmações.
Mudanças na API
- As origens androidx.sqlite do grupo de bibliotecas foram convertidas de Java em Kotlin. Como o androidx.sqlite tem algumas anotações de nulidade ausentes, é possível que você encontre erros de incompatibilidade de origem se as origens estão em Kotlin, e o código está inferindo a nulidade errada. Registre um bug em caso de incompatibilidade significativa (b/240707042).
Versão 2.3.0-alpha04
10 de agosto de 2022
Lançamento de androidx.sqlite:sqlite:2.3.0-alpha04
, androidx.sqlite:sqlite-framework:2.3.0-alpha04
e androidx.sqlite:sqlite-ktx:2.3.0-alpha04
. A versão 2.3.0-alpha04 contém estas confirmações.
Mudanças na API
- Atualização da nulidade (I29fbd).
Versão 2.3.0-alpha03
1º de junho de 2022
Lançamento de androidx.sqlite:sqlite:2.3.0-alpha03
, androidx.sqlite:sqlite-framework:2.3.0-alpha03
e androidx.sqlite:sqlite-ktx:2.3.0-alpha03
. A versão 2.3.0-alpha03 contém estas confirmações.
Mudanças na API
androidx.sqlite.ProcessLock
foi restrito. A API tem escopo e é limitada à função dela emandroidx.sqlite
. Não é recomendado o uso geral dela para bloqueio de vários processos (I1643f).
Versão 2.3.0-alpha02
6 de abril de 2022
Lançamento de androidx.sqlite:sqlite:2.3.0-alpha02
, androidx.sqlite:sqlite-framework:2.3.0-alpha02
e androidx.sqlite:sqlite-ktx:2.3.0-alpha02
. A versão 2.3.0-alpha02 contém estas confirmações.
- Nenhuma mudança significativa desde a versão 2.3.0-alpha01.
Versão 2.3.0-alpha01
23 de fevereiro de 2022
Lançamento de androidx.sqlite:sqlite:2.3.0-alpha01
, androidx.sqlite:sqlite-framework:2.3.0-alpha01
e androidx.sqlite:sqlite-ktx:2.3.0-alpha01
. A versão 2.3.0-alpha01 contém estas confirmações.
Mudanças na API
- Adição de uma API à configuração do SupportSQLite para permitir a perda de dados durante o mecanismo de recuperação (I1b830, b/215592732).
- Adição de API para bloqueio e uso de vários processos no nível do FrameworkSQLite* para proteger a primeira criação e migração de bancos de dados de vários processos (Ied267, b/193182592).
Versão 2.2.0
Versão 2.2.0
15 de dezembro de 2021
Lançamento de androidx.sqlite:sqlite:2.2.0
, androidx.sqlite:sqlite-framework:2.2.0
e androidx.sqlite:sqlite-ktx:2.2.0
. A versão 2.2.0 contém estas confirmações.
Mudanças importantes desde a versão 2.1.0
Adição do método padrão para execPerConnectionSQL()
na SupportSQLiteDatabase
.
Versão 2.2.0-rc01
1º de dezembro de 2021
Lançamento de androidx.sqlite:sqlite:2.2.0-rc01
, androidx.sqlite:sqlite-framework:2.2.0-rc01
e androidx.sqlite:sqlite-ktx:2.2.0-rc01
. A versão 2.2.0-rc01 contém estas confirmações.
Nenhuma mudança significativa desde a versão 2.2.0-beta01.
Versão 2.2.0-beta01
13 de outubro de 2021
Lançamento de androidx.sqlite:sqlite:2.2.0-beta01
, androidx.sqlite:sqlite-framework:2.2.0-beta01
e androidx.sqlite:sqlite-ktx:2.2.0-beta01
. A versão 2.2.0-beta01 contém estas confirmações.
- Nenhuma mudança em relação à versão Alfa anterior.
Versão 2.2.0-alpha02
21 de julho de 2021
Lançamento de androidx.sqlite:sqlite:2.2.0-alpha02
, androidx.sqlite:sqlite-framework:2.2.0-alpha02
e androidx.sqlite:sqlite-ktx:2.2.0-alpha02
. A versão 2.2.0-alpha02 contém estas confirmações.
Nenhuma mudança significativa desde a versão 2.2.0-alpha01. Esta versão é apenas para alinhamento com a Room 2.4.0-alpha04
.
Versão 2.2.0-alpha01
16 de junho de 2021
Lançamento de androidx.sqlite:sqlite:2.2.0-alpha01
, androidx.sqlite:sqlite-framework:2.2.0-alpha01
e androidx.sqlite:sqlite-ktx:2.2.0-alpha01
. A versão 2.2.0-alpha01 contém estas confirmações.
Mudanças na API
- Adição do método padrão para
execPerConnectionSQL()
em SupportSQLiteDatabase (I86326, b/172270145)
Versão 2.1.0
Versão 2.1.0
22 de janeiro de 2020
Lançamento de androidx.sqlite:sqlite:2.1.0
, androidx.sqlite:sqlite-framework:2.1.0
e androidx.sqlite:sqlite-ktx:2.1.0
sem mudanças desde 2.1.0-rc01
. A versão 2.1.0 contém estas confirmações.
Mudanças importantes desde a versão 2.0.1
- Suporte a
useNoBackupDirectory
, que pode ser usado para indicar que o banco de dados precisa ser criado no diretório sem backup ao usarSupportSQLiteOpenHelper
.
Versão 2.1.0-rc01
8 de janeiro de 2020
androidx.sqlite:sqlite-*:2.1.0-rc01
é lançado. A versão 2.1.0-rc01 contém estas confirmações.
Essa versão é idêntica a 2.1.0-beta01
.
Versão 2.1.0-beta01
4 de dezembro de 2019
Lançamento de androidx.sqlite:sqlite:2.1.0-beta01
, androidx.sqlite:sqlite-framework:2.1.0-beta01
e androidx.sqlite:sqlite-ktx:2.1.0-beta01
sem mudanças desde 2.1.0-alpha01
. A versão 2.1.0-beta01 contém estas confirmações.
Versão 2.1.0-alpha01
7 de novembro de 2019
Lançamento de androidx.sqlite:sqlite:2.1.0-alpha01
, androidx.sqlite:sqlite-framework:2.1.0-alpha01
e androidx.sqlite:sqlite-ktx:2.1.0-alpha01
. A versão 2.1.0-alpha01 contém essas confirmações (link em inglês).
Mudanças na API
- Adição de uma nova propriedade a
SupportSQLiteOpenHelper.Configuration
chamadauseNoBackupDirectory
para indicar que um banco de dados baseado em arquivo precisa ser criado e localizado no diretório sem backup.
Versão 2.0.1
Versão 2.0.1
13 de março de 2019
Lançamento da versão 2.0.1 do grupo de artefatos androidx.sqlite
com duas correções de bugs.
Correções de bugs
- Foram corrigidos dois problemas em que
FrameworkSQLiteOpenHelper
não se recuperava corretamente de um banco de dados corrompido ou de uma migração incorreta durante a inicialização (b/111504749 e b/111519144).