Jinsi ya Kutumia Custom SQLite Extensions kwenye Capacitor
SQLite ya kawaida inafanya kazi kwa majukumu mengi. Wakati mwingine unahitaji zaidi.
Unaweza kuhitaji tokenizer maalum kwa ajili ya lugha fulani. Unaweza kuhitaji kazi (functions) za hisabati maalum au usindikaji wa kipekee wa maandishi. Hizi huitwa loadable extensions.
Plugin ya Capacitor SQLite inazisupport hizi kwenye Android na iOS.
Kwa nini utumie extensions?
- Custom FTS5 tokenizers: Dhibiti jinsi maandishi yanavyogawanywa kwa ajili ya utafutaji.
- Custom SQL functions: Tekeleza mantiki (logic) tata karibu na data zako.
Utekelezaji unatofautiana kulingana na jukwaa (platform).
Android
SQLite ya mfumo wa Android haisupport kupakia extensions moja kwa moja. Lazima utumie backend ya requery.
- Washa chaguo la requery kwenye faili lako la variables.gradle.
- Ongeza repository ya JitPack kwenye faili lako la build.gradle.
- Compile kodi yako ya C kuwa native libraries (.so files) kwa kila usanifu wa CPU (CPU architecture).
- Weka faili hizi kwenye folda ya jniLibs.
- Tumia chaguo la androidExtensions unapofungua database.
iOS
Programu za iOS haziwezi kupakia dynamic libraries wakati wa utendaji (runtime). Lazima uunganishe (link) extension yako kistatiki (statically).
- Ongeza faili lako la chanzo la C (C source file) kwenye mradi wako wa Xcode.
- Weka compiler flag ya -DSQLITE_CORE kwa faili hilo.
- Tangaza function ya init kwenye bridging header yako.
- Sajili extension kwenye AppDelegate yako ukitumia sqlite3_auto_extension.
Kodi ya C kwa ajili ya extension yako inabaki vilevile. Ni hatua za ujenzi (build) na usajili tu zinazobadilika.
Ikishapakia, extension yako maalum itafanya kazi kama kipengele cha ndani cha SQLite. Unaweza kutumia tokenizer au function yako mpya kwenye kauli zako za SQL mara moja.
Custom extensions zinakupa nguvu ya kodi ya asili (native code) ndani ya database yako ya simu.
Chanzo: https://dev.to/capawesome/how-to-use-custom-sqlite-extensions-in-capacitor-l5k