سكليت
androidx.sqlite
على واجهات مجردة إلى جانب تطبيقات
أساسية يمكن استخدامها لإنشاء مكتباتك الخاصة التي يمكنها الوصول إلى
SQLite.
ننصحك باستخدام مكتبة Room، التي توفّر طبقة تجريد على SQLite للسماح بالوصول إلى قاعدة بيانات أكثر قوةً مع الاستفادة من إمكانات SQLite الكاملة.
آخر تعديل | الإصدار المستقر | إصدار مرشح | الإصدار التجريبي | الإصدار الأولي |
---|---|---|---|---|
18 تشرين الأول (أكتوبر) 2023 | 2.4.0 | - | - | - |
تعريف التبعيات
لإضافة تبعية على SQLite، يجب إضافة مستودع Google Maven إلى مشروعك. يمكنك الاطّلاع على مستودع Maven الذي يضم أدوات Google للحصول على مزيد من المعلومات.
أضف التبعيات للعناصر التي تحتاجها في ملف build.gradle
لتطبيقك أو وحدتك:
رائع
dependencies { def sqlite_version = "2.4.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.4.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") }
ولمزيدٍ من المعلومات عن التبعيات، يُرجى الاطّلاع على مقالة إضافة تبعيات الإصدار.
ملاحظات
تساعدنا ملاحظاتك في تحسين Jetpack. يُرجى إخبارنا إذا اكتشفت مشاكل جديدة أو كانت لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مشكلة جديدة. يمكنك إضافة تصويتك إلى مشكلة حالية من خلال النقر على زر النجمة.
راجع مستندات أداة تتبُّع المشاكل للحصول على مزيد من المعلومات.
الإصدار 2.4
الإصدار 2.4.0
18 تشرين الأول (أكتوبر) 2023
تم إصدار androidx.sqlite:sqlite:2.4.0
وandroidx.sqlite:sqlite-framework:2.4.0
وandroidx.sqlite:sqlite-ktx:2.4.0
. يحتوي الإصدار 2.4.0 على هذه الالتزامات.
تغييرات مهمة منذ الإصدار 2.3.0
- تمت إضافة العديد من إصلاحات الأخطاء.
الإصدار 2.4.0-rc01
20 أيلول (سبتمبر) 2023
تم إصدار androidx.sqlite:sqlite:2.4.0-rc01
وandroidx.sqlite:sqlite-framework:2.4.0-rc01
وandroidx.sqlite:sqlite-ktx:2.4.0-rc01
. يحتوي الإصدار 2.4.0-rc01 على هذه الالتزامات.
الإصدار 2.4.0-beta01
23 آب (أغسطس) 2023
تم إصدار androidx.sqlite:sqlite:2.4.0-beta01
وandroidx.sqlite:sqlite-framework:2.4.0-beta01
وandroidx.sqlite:sqlite-ktx:2.4.0-beta01
. يتضمّن الإصدار 2.4.0-beta01 هذه الالتزامات.
الإصدار 2.4.0-alpha03
9 آب (أغسطس) 2023
تم إصدار androidx.sqlite:sqlite:2.4.0-alpha03
وandroidx.sqlite:sqlite-framework:2.4.0-alpha03
وandroidx.sqlite:sqlite-ktx:2.4.0-alpha03
. يحتوي الإصدار 2.4.0-alpha03 على هذه الالتزامات.
الإصدار 2.4.0-alpha02
21 حزيران (يونيو) 2023
تم إصدار androidx.sqlite:sqlite:2.4.0-alpha02
وandroidx.sqlite:sqlite-framework:2.4.0-alpha02
وandroidx.sqlite:sqlite-ktx:2.4.0-alpha02
بدون أي تغييرات. يحتوي الإصدار 2.4.0-alpha02 على هذه الالتزامات.
الإصدار 2.4.0-alpha01
22 آذار (مارس) 2023
تم إصدار androidx.sqlite:sqlite:2.4.0-alpha01
وandroidx.sqlite:sqlite-framework:2.4.0-alpha01
وandroidx.sqlite:sqlite-ktx:2.4.0-alpha01
. يحتوي الإصدار 2.4.0-alpha01 على هذه الالتزامات.
إصلاح الأخطاء
- تم إصلاح مشكلة
NullPointerException
التي قد تحدث فيSupportSQLiteQueryBuilder
. (5df8698)
الإصدار 2.3.1
الإصدار 2.3.1
22 آذار (مارس) 2023
تم إصدار androidx.sqlite:sqlite:2.3.1
وandroidx.sqlite:sqlite-framework:2.3.1
وandroidx.sqlite:sqlite-ktx:2.3.1
. يتضمّن الإصدار 2.3.1 هذه الالتزامات.
إصلاح الأخطاء
- تجنَّب مشكلة إطار العمل التي لا يتم فيها إلغاء صلاحية طلبات بحث SQL بعد تغيير المخطط أثناء عمليات نقل البيانات. ستعمل
FrameworkSupportSQLiteOpenHelper
الآن على ضبط الحد الأدنى لذاكرة التخزين المؤقت لعبارات SQL أثناء عمليات نقل البيانات لتجنُّب حدوث المشكلة. (0ad2a8f) - تم إصلاح المشكلة المتمثلة في عدم توفر دليل ذاكرة التخزين المؤقت للاستخدام مع
SupportSQLiteLock
، وبالتالي يجب التعامل مع ملف فارغ بشكل آمن. (9d177dc) - تم إصلاح المشكلة المتمثلة في عدم عرض
attachedDbs
للقائمة الكاملة لقواعد البيانات المرفقة. (5f008e1)
الإصدار 2.3.0
الإصدار 2.3.0
11 كانون الثاني (يناير) 2023
تم إصدار androidx.sqlite:sqlite:2.3.0
وandroidx.sqlite:sqlite-framework:2.3.0
وandroidx.sqlite:sqlite-ktx:2.3.0
. يحتوي الإصدار 2.3.0 على هذه الالتزامات.
تغييرات مهمة منذ الإصدار 2.2.0
- تم تحويل مصادر مجموعة المكتبة
androidx.sqlite
من لغة Java إلى لغة Kotlin. يُرجى العلم أنّه بسبب عدم توفّر بعض التعليقات التوضيحية المتعلّقة بالقيم الفارغة فيandroidx.sqlite
، قد تحدث أخطاء عدم توافق مع المصدر إذا كانت مصادرك في لغة Kotlin وكان الرمز يستنتج قيمة خاطئة لقيم القيم الفارغة. علاوة على ذلك، تم تحويل بعض طرق الاستلام إلى خصائص تتطلب بناء جملة الوصول إلى الخاصية في ملفات Kotlin. يُرجى الإبلاغ عن الخطأ إذا كان هناك أي حالات عدم توافق كبيرة. (b/240707042) - أضِف واجهة برمجة تطبيقات في إعدادات
SupportSQLite's
للسماح بفقدان البيانات أثناء آلية الاسترداد. (I1b830، b/215592732) - تمت إضافة واجهة برمجة التطبيقات لقفل عدة عمليات واستخدامها على مستوى
FrameworkSQLite*
، وذلك لحماية عمليات إنشاء قاعدة البيانات متعددة العمليات ونقلها للمرة الأولى. (Ied267، b/193182592)
الإصدار 2.3.0-rc01
7 كانون الأول (ديسمبر) 2022
تم إصدار androidx.sqlite:sqlite:2.3.0-rc01
وandroidx.sqlite:sqlite-framework:2.3.0-rc01
وandroidx.sqlite:sqlite-ktx:2.3.0-rc01
. يحتوي الإصدار 2.3.0-rc01 على هذه الالتزامات.
إصلاح الأخطاء
- حل مشكلة NPE في
SupportSQLiteQueryBuilder
للأعمدة القابلة للقيم الفارغة. (Ica8f5)
الإصدار 2.3.0-beta02
تشرين الثاني (نوفمبر) 2022
تم إصدار androidx.sqlite:sqlite:2.3.0-beta02
وandroidx.sqlite:sqlite-framework:2.3.0-beta02
وandroidx.sqlite:sqlite-ktx:2.3.0-beta02
. يتضمّن الإصدار 2.3.0-beta02 هذه الالتزامات.
- أصلِح العديد من واجهات برمجة التطبيقات التي تستخدم وسيطات طلب البحث من قيمة غير ثابتة (
Array<Any?>
) إلى متعارضة (Array<out Any?>
) لمطابقة سلوك مصفوفة لغة Java. (b/253531073)
الإصدار 2.3.0-beta01
5 تشرين الأول (أكتوبر) 2022
تم إصدار androidx.sqlite:sqlite:2.3.0-beta01
وandroidx.sqlite:sqlite-framework:2.3.0-beta01
وandroidx.sqlite:sqlite-ktx:2.3.0-beta01
. يتضمّن الإصدار 2.3.0-beta01 هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- تم تحويل جميع مصادر android.sqlite من لغة Java إلى لغة Kotlin. b/240707042
- يتمثّل أحد التغييرات الملحوظة في الإحالة الناجحة في أنّ دوال getter التالية قد أصبحت سمات:
- في
SupportSQLiteDatabase
: attachedDbs
isDatabaseIntegrityOk
isDbLockedByCurrentThread
isOpen
isReadOnly
isWriteAheadLoggingEnabled
maximumSize
pageSize
path
version
- في
SupportSQLiteOpenHelper
: databaseName
readableDatabase
writableDatabase
- في
الإصدار 2.3.0-alpha05
24 آب (أغسطس) 2022
تم إصدار androidx.sqlite:sqlite:2.3.0-alpha05
وandroidx.sqlite:sqlite-framework:2.3.0-alpha05
وandroidx.sqlite:sqlite-ktx:2.3.0-alpha05
. يحتوي الإصدار 2.3.0-alpha05 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- تم تحويل مصادر مجموعة المكتبة androidx.sqlite من لغة البرمجة Java إلى لغة Kotlin. يُرجى العلم أنّه بسبب عدم توفّر بعض التعليقات التوضيحية المتعلّقة بقابلية إبطال القيم الفارغة، قد تواجه أخطاء عدم توافق المصدر إذا كانت مصادرك في Kotlin وكان الرمز البرمجي يستنتج خطأ في قيم القيم الفارغة، وذلك بسبب عدم توفّر تعليقات توضيحية في androidx.sqlite. يُرجى الإبلاغ عن الخطأ إذا كان هناك أي عدم توافق كبير. (b/240707042)
الإصدار 2.3.0-alpha04
10 آب (أغسطس) 2022
تم إصدار androidx.sqlite:sqlite:2.3.0-alpha04
وandroidx.sqlite:sqlite-framework:2.3.0-alpha04
وandroidx.sqlite:sqlite-ktx:2.3.0-alpha04
. يحتوي الإصدار 2.3.0-alpha04 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- تعديل إمكانية القيم الفارغة (I29fbd)
الإصدار 2.3.0-alpha03
1 حزيران (يونيو) 2022
تم إصدار androidx.sqlite:sqlite:2.3.0-alpha03
وandroidx.sqlite:sqlite-framework:2.3.0-alpha03
وandroidx.sqlite:sqlite-ktx:2.3.0-alpha03
. يحتوي الإصدار 2.3.0-alpha03 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- جعل "
androidx.sqlite.ProcessLock
" محظورًا وواجهة برمجة التطبيقات محدودة وتقتصر على وظيفتها فيandroidx.sqlite
ويجب عدم استخدامها كقفل متعدد العمليات للأغراض العامة. (I1643f)
الإصدار 2.3.0-alpha02
6 نيسان (أبريل) 2022
تم إصدار androidx.sqlite:sqlite:2.3.0-alpha02
وandroidx.sqlite:sqlite-framework:2.3.0-alpha02
وandroidx.sqlite:sqlite-ktx:2.3.0-alpha02
. يحتوي الإصدار 2.3.0-alpha02 على هذه الالتزامات.
- لم يتم إجراء تغييرات مهمة منذ الإصدار 2.3.0-alpha01
الإصدار 2.3.0-alpha01
23 شباط (فبراير) 2022
تم إصدار androidx.sqlite:sqlite:2.3.0-alpha01
وandroidx.sqlite:sqlite-framework:2.3.0-alpha01
وandroidx.sqlite:sqlite-ktx:2.3.0-alpha01
. يحتوي الإصدار 2.3.0-alpha01 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- أضِف واجهة برمجة تطبيقات في إعدادات SupportSQLite للسماح بفقدان البيانات أثناء آلية الاسترداد. (I1b830، b/215592732)
- تمت إضافة واجهة برمجة التطبيقات لقفل العمليات المتعددة واستخدامها على مستوى FrameworkSQLite*، لحماية عملية إنشاء قاعدة البيانات المتعددة العمليات ونقلها للمرة الأولى. (Ied267، b/193182592)
الإصدار 2.2.0
الإصدار 2.2.0
15 كانون الأول (ديسمبر) 2021
تم إصدار androidx.sqlite:sqlite:2.2.0
وandroidx.sqlite:sqlite-framework:2.2.0
وandroidx.sqlite:sqlite-ktx:2.2.0
. يحتوي الإصدار 2.2.0 على هذه الالتزامات.
تغييرات مهمة منذ الإصدار 2.1.0
إضافة الطريقة التلقائية لـ execPerConnectionSQL()
في SupportSQLiteDatabase
.
الإصدار 2.2.0-rc01
1 كانون الأول (ديسمبر) 2021
تم إصدار androidx.sqlite:sqlite:2.2.0-rc01
وandroidx.sqlite:sqlite-framework:2.2.0-rc01
وandroidx.sqlite:sqlite-ktx:2.2.0-rc01
. يحتوي الإصدار 2.2.0-rc01 على هذه الالتزامات.
لم يتم إجراء أي تغييرات مهمة منذ استخدام الإصدار 2.2.0 حتى الإصدار التجريبي 01.
الإصدار 2.2.0-beta01
13 تشرين الأول (أكتوبر) 2021
تم إصدار androidx.sqlite:sqlite:2.2.0-beta01
وandroidx.sqlite:sqlite-framework:2.2.0-beta01
وandroidx.sqlite:sqlite-ktx:2.2.0-beta01
. يتضمّن الإصدار 2.2.0-beta01 هذه الالتزامات.
- ما مِن تغييرات عن الإصدار الأولي السابق.
الإصدار 2.2.0-alpha02
21 تموز (يوليو) 2021
تم إصدار androidx.sqlite:sqlite:2.2.0-alpha02
وandroidx.sqlite:sqlite-framework:2.2.0-alpha02
وandroidx.sqlite:sqlite-ktx:2.2.0-alpha02
. يحتوي الإصدار 2.2.0-alpha02 على هذه الالتزامات.
لم يتم إجراء تغييرات مهمة منذ الإصدار 2.2.0-alpha01. هذا الإصدار يتوافق فقط مع عملية إلغاء حجز الغرفة 2.4.0-alpha04
.
الإصدار 2.2.0-alpha01
16 حزيران (يونيو) 2021
تم إصدار androidx.sqlite:sqlite:2.2.0-alpha01
وandroidx.sqlite:sqlite-framework:2.2.0-alpha01
وandroidx.sqlite:sqlite-ktx:2.2.0-alpha01
. يحتوي الإصدار 2.2.0-alpha01 على هذه الالتزامات.
تغييرات واجهة برمجة التطبيقات
- إضافة الطريقة التلقائية لـ
execPerConnectionSQL()
في SupportSQLiteDatabase (I86326، b/172270145)
الإصدار 2.1.0
الإصدار 2.1.0
22 كانون الثاني (يناير) 2020
تم إصدار androidx.sqlite:sqlite:2.1.0
وandroidx.sqlite:sqlite-framework:2.1.0
وandroidx.sqlite:sqlite-ktx:2.1.0
بدون أي تغييرات منذ 2.1.0-rc01
. يحتوي الإصدار 2.1.0 على هذه الالتزامات.
تغييرات مهمة منذ الإصدار 2.0.1
- دعم
useNoBackupDirectory
والذي يمكن استخدامه للإشارة إلى ضرورة إنشاء قاعدة البيانات في دليل عدم النسخ الاحتياطي عند استخدامSupportSQLiteOpenHelper
.
الإصدار 2.1.0-rc01
8 كانون الثاني (يناير) 2020
تم إصدار "androidx.sqlite:sqlite-*:2.1.0-rc01
". يحتوي الإصدار 2.1.0-rc01 على هذه الالتزامات.
هذا الإصدار مماثل لسياسة 2.1.0-beta01
.
الإصدار 2.1.0-beta01
4 كانون الأول (ديسمبر) 2019
تم إصدار androidx.sqlite:sqlite:2.1.0-beta01
وandroidx.sqlite:sqlite-framework:2.1.0-beta01
وandroidx.sqlite:sqlite-ktx:2.1.0-beta01
بدون أي تغييرات منذ 2.1.0-alpha01
. يتضمّن الإصدار 2.1.0-beta01 هذه الالتزامات.
الإصدار 2.1.0-alpha01
7 تشرين الثاني (نوفمبر) 2019
تم إصدار androidx.sqlite:sqlite:2.1.0-alpha01
وandroidx.sqlite:sqlite-framework:2.1.0-alpha01
وandroidx.sqlite:sqlite-ktx:2.1.0-alpha01
. يحتوي الإصدار 2.1.0-alpha01 على هذه الالتزامات.
التغييرات في واجهة برمجة التطبيقات
- تمت إضافة خاصية جديدة إلى
SupportSQLiteOpenHelper.Configuration
تسمىuseNoBackupDirectory
للإشارة إلى ضرورة إنشاء قاعدة بيانات مستندة إلى ملف وتحديد موقعها من دليل عدم النسخ الاحتياطي.
الإصدار 2.0.1
الإصدار 2.0.1
13 آذار (مارس) 2019
تم طرح الإصدار 2.0.1 من مجموعة العناصر androidx.sqlite
مع إصلاحَين للأخطاء.
إصلاح الأخطاء
- تم إصلاح مشكلتين حيث لا يتم استرداد
FrameworkSQLiteOpenHelper
بشكل صحيح من قاعدة بيانات تالفة أو عملية نقل غير صالحة أثناء الإعداد. (b/111504749 وb/111519144)