Skip to Content
പ്രധാന ആശയങ്ങൾഇക്കോസിസ്റ്റം & പാക്കേജുകൾ

ട്രേസ്ലെറ്റ് ഇക്കോസിസ്റ്റം & പാക്കേജുകൾ

ഒരു ഫെഡറേറ്റഡ് പ്ലഗിൻ ആർക്കിടെക്ചർ ഉപയോഗിച്ചാണ് ട്രേസ്‌ലെറ്റ് നിർമ്മിച്ചിരിക്കുന്നത്. നിങ്ങളുടെ ആപ്പിലേക്ക് ഒരു വലിയ, ഏകശില ആശ്രിതത്വം നിർബന്ധമാക്കുന്നതിനുപകരം, Tracelet നിരവധി മോഡുലാർ പാക്കേജുകളായി വിഭജിക്കപ്പെട്ടിരിക്കുന്നു. ഇത് നിങ്ങളുടെ ആപ്പ് വലുപ്പം ചെറുതായിരിക്കുമെന്ന് ഉറപ്പാക്കുന്നു, നിങ്ങൾക്ക് യഥാർത്ഥത്തിൽ ആവശ്യമുള്ള നേറ്റീവ് പെർമിഷനുകളും കോഡും മാത്രമേ ഷിപ്പുചെയ്യൂ, കൂടാതെ ബാക്കെൻഡ് ലോജിക് ലൊക്കേഷൻ ട്രാക്കിംഗിൽ നിന്ന് പൂർണ്ണമായും വേർപെടുത്തിയിരിക്കുന്നു.

ട്രേസ്‌ലെറ്റ് ഇക്കോസിസ്റ്റത്തിലെ എല്ലാ പാക്കേജുകളുടെയും അത് ചെയ്യുന്നതിൻ്റെയും ഒരു അവലോകനം ചുവടെയുണ്ട്.

കോർ പാക്കേജുകൾ

ഈ പാക്കേജുകളാണ് ട്രേസ്‌ലെറ്റിൻ്റെ അടിസ്ഥാനം. മിക്ക ആപ്പുകളും എപ്പോഴെങ്കിലും പ്രധാന tracelet പാക്കേജുമായി നേരിട്ട് സംവദിക്കേണ്ടതുണ്ട്.

വിവർത്തനം ചെയ്യരുത്

നിങ്ങളുടെ pubspec.yaml-ലേക്ക് നിങ്ങൾ ചേർക്കുന്ന പ്രാഥമിക ഫ്രണ്ട്എൻഡ് പാക്കേജാണിത്. ഇത് പ്രധാന ഡാർട്ട് API (Tracelet.start(), Tracelet.ready()), കോൺഫിഗറേഷൻ ഒബ്‌ജക്റ്റുകൾ (Config.balanced()) നൽകുന്നു, കൂടാതെ ഡാർട്ട്-ടു-റസ്റ്റ് ബൈൻഡിംഗുകൾ കൈകാര്യം ചെയ്യുന്നു.

വിവർത്തനം ചെയ്യരുത്

ഫ്രണ്ട്എൻഡ് tracelet പാക്കേജിനെ അന്തർലീനമായ നേറ്റീവ് പ്ലാറ്റ്‌ഫോമുകളിലേക്ക് ബന്ധിപ്പിക്കുന്ന അബ്‌സ്‌ട്രാക്റ്റ് കോമൺ ഇൻ്റർഫേസ്. നിങ്ങൾ ഇത് ഒരിക്കലും നേരിട്ട് സംവദിക്കില്ല, എന്നാൽ എല്ലാ പ്ലാറ്റ്‌ഫോമുകളും കൃത്യമായ അതേ രീതികളോടും റിട്ടേൺ തരങ്ങളോടും പൊരുത്തപ്പെടുന്നുണ്ടെന്ന് ഇത് ഉറപ്പാക്കുന്നു.

tracelet_android & tracelet_ios & tracelet_web

ഇവയാണ് പ്ലാറ്റ്ഫോം-നിർദ്ദിഷ്ട നടപ്പാക്കലുകൾ. നിങ്ങൾ tracelet ഇൻസ്റ്റാൾ ചെയ്യുമ്പോൾ, ഈ പ്ലാറ്റ്‌ഫോം പാക്കേജുകളിൽ Flutter സ്വയമേവ വലിക്കുന്നു.

  • tracelet_android ൽ കോട്‌ലിൻ റാപ്പറുകളും ആൻഡ്രോയിഡ് പശ്ചാത്തല സേവന ലോജിക്കും അടങ്ങിയിരിക്കുന്നു.
  • tracelet_ios സ്വിഫ്റ്റ് റാപ്പറുകളും CLLocationManager ലോജിക്കും ഉൾക്കൊള്ളുന്നു.

നെറ്റ്‌വർക്കിംഗ് & സമന്വയ അഡാപ്റ്ററുകൾ

“നെറ്റ്‌വർക്ക് സമന്വയിപ്പിക്കൽ” എന്നതിൽ നിന്ന് “ലൊക്കേഷൻ ട്രാക്കിംഗിനെ” ട്രേസ്‌ലെറ്റ് കർശനമായി വേർതിരിക്കുന്നു. onLocation-നുള്ളിൽ നിങ്ങളുടേതായ മാനുവൽ HTTP റീട്രി ലോജിക് നിർമ്മിക്കാൻ നിങ്ങൾ ആഗ്രഹിക്കുന്നുവെങ്കിൽ, നിങ്ങൾ ഒരിക്കലും ഇവ ഇൻസ്റ്റാൾ ചെയ്യേണ്ടതില്ല. എന്നാൽ നിങ്ങൾക്ക് ഓട്ടോമേറ്റഡ്, ബാറ്ററി സൗഹൃദ ഓഫ്‌ലൈൻ സമന്വയം വേണമെങ്കിൽ, നിങ്ങൾ ഒരു അഡാപ്റ്റർ ഉപയോഗിക്കുന്നു.

വിവർത്തനം ചെയ്യരുത്

പ്രധാന നേറ്റീവ് നെറ്റ്‌വർക്കിംഗ് എഞ്ചിൻ. ഇത് TraceletSync API നൽകുന്നു. HTTP അഭ്യർത്ഥനകൾ അയയ്‌ക്കുന്നതിന് ഡാർട്ട് എഞ്ചിൻ ഉണർത്തുന്നതിനുപകരം, നിങ്ങളുടെ ആപ്പ് നിർബന്ധിതമായി പുറത്തുകടക്കുമ്പോൾ പോലും, SQLite ലൊക്കേഷനുകൾ നിങ്ങളുടെ HTTP ബാക്കെൻഡിലേക്ക് സ്വയമേവ ഫ്ലഷ് ചെയ്യുന്നതിന് ഒരു നേറ്റീവ് വർക്ക് മാനേജർ (Android) അല്ലെങ്കിൽ BGTask (iOS) പ്രവർത്തിപ്പിക്കുന്നു.

വിവർത്തനം ചെയ്യരുത്

Supabase  എന്നതിനായി മുൻകൂട്ടി നിർമ്മിച്ച അഡാപ്റ്റർ. ഇത് ഒരു Supabase Postgres RPC ഫംഗ്‌ഷനിൽ Tracelet-ൻ്റെ നേറ്റീവ് HTTP സമന്വയ എഞ്ചിനെ പോയിൻ്റ് ചെയ്യുന്നു (അല്ലെങ്കിൽഎഡ്ജ് ഫംഗ്‌ഷൻ**), നിങ്ങൾക്കായി apikey/Authorization തലക്കെട്ടുകൾ സജ്ജീകരിക്കുകയും പശ്ചാത്തലത്തിൽ Supabase സെഷൻ ടോക്കൺ പുതുക്കുകയും ചെയ്യുന്നു, അങ്ങനെ ആപ്പ് അവസാനിപ്പിക്കുമ്പോൾ സമന്വയം പ്രവർത്തിക്കുന്നത് തുടരും.

വിവർത്തനം ചെയ്യരുത്

ഫയർബേസ് റിയൽടൈം ഡാറ്റാബേസിനായി (RTDB)  മുൻകൂട്ടി നിർമ്മിച്ച അഡാപ്റ്റർ. ഇത് RTDB REST API-ൽ Tracelet-ൻ്റെ നേറ്റീവ് HTTP സമന്വയ എഞ്ചിനെ ചൂണ്ടിക്കാണിക്കുന്നു — 100% സെർവർലെസ്, ക്ലൗഡ് ഫംഗ്‌ഷനുകൾ ഇല്ല — ഒപ്പം Firebase Auth ID ടോക്കൺ പശ്ചാത്തലത്തിൽ പുതുക്കുകയും ചെയ്യുന്നു, അതിനാൽ ആപ്പ് അവസാനിപ്പിക്കുമ്പോൾ സമന്വയം പ്രവർത്തിക്കുന്നത് തുടരും.


ഡയഗ്നോസ്റ്റിക് & ഡീബഗ്ഗിംഗ് ടൂളുകൾ

വിവർത്തനം ചെയ്യരുത്

ഡെവലപ്പർമാർക്കുള്ള ഒരു ഡ്രോപ്പ്-ഇൻ UI ഓവർലേ പാക്കേജ്. ഇത് ഒരു dev ഡിപൻഡൻസി (flutter pub add dev:tracelet_doctor) ആയി ചേർക്കുക, ഒരു സാധാരണ ഡിപൻഡൻസി അല്ല - ഫ്ലട്ടർ റിലീസ് ബിൽഡുകളിൽ നിന്ന് dev-dipendency പാക്കേജുകളെ ഒഴിവാക്കുന്നു, അതിനാൽ നിങ്ങൾ ഷിപ്പ് ചെയ്യുന്നതിൽ നിന്ന് ഇത് സ്വയമേവ നീക്കം ചെയ്യപ്പെടും. പരിശോധനയ്ക്കിടെ നിങ്ങളുടെ ആപ്പിലേക്ക് tracelet_doctor ചേർക്കുന്നതിലൂടെ, പ്രദർശിപ്പിക്കുന്ന മനോഹരമായ ഡയഗ്നോസ്റ്റിക് ഓവർലേ നിങ്ങൾക്ക് ലഭിക്കും:

  • തത്സമയ GPS കൃത്യത റിംഗ് ചെയ്യുന്നു
  • നിലവിലെ ചലന നില (STATIONARY vs MOVING)
  • നേറ്റീവ് SQLite ഡാറ്റാബേസ് വരികളുടെ എണ്ണം
  • അടിസ്ഥാന ബാറ്ററി ചോർച്ച

QA സമയത്തും ടെസ്റ്റിംഗിലും tracelet_doctor ഉപയോഗിക്കുന്നത് വളരെ ഉത്തമമാണ്. ഇത് dev_dependencies-ന് കീഴിൽ സൂക്ഷിക്കുക, kDebugMode-ന് പിന്നിൽ ഗാർഡ് ഉപയോഗം, അതുവഴി നിങ്ങളുടെ റിലീസ് ബിൽഡുകളിൽ നിന്ന് ഇത് ട്രീ-ഷേക്ക് ചെയ്യപ്പെടും.