Андроид апликације са Апацхе Цордовом и СКлите

Преглед садржаја
Веб локација направљена са ХТМЛ 5, ЈаваСцрипт, ЦСС 3, може се изводити на различитим уређајима користећи Апацхе Цордова. Ако имамо мобилну апликацију и желимо да складиштимо, управљамо и преузимамо податке на ефикасан и поуздан начин, Апацхе Цордова нам пружа додатак за руковање СКЛите базама података.
Андроид са своје стране већ у својој архитектури садржи све потребне алате за креирање и управљање СКЛите базама података, тако да можемо уметати, мењати, консултовати и брисати податке. Ова база података ће бити локална, односно чуваће се на уређају на којем је апликација покренута.
У другом водичу смо већ објаснили инсталацију Апацхе Цордове, у овом ћемо направити апликацију која ће разумети како Склите база података ради са Андроид -а.
У овом случају користићемо Линук терминал, али Апацхе Цордова има више платформи. Почећемо стварањем пројекта са терминала и у роот режиму користећи следећи код:
 цордова креирај апликацију цом.демо.апп Апп01

Након креирања додајемо платформу, уређај на којем ће се ово извршити омогућава конфигурирање емулатора у овом случају то ће бити Андроид, с терминала пишемо сљедећи код:
 Цордова платформа додати андроид
Претпостављамо да у Андроид Адв менаџеру већ имамо конфигурисан уређај, али конфигуришемо онај који подржава Апи 19 па на даље, то је Андроид 4.4.2

Сада ћемо инсталирати додатак да бисмо могли да радимо са Склите -ом, са терминала ћемо извршити следећу команду која ће преузети и инсталирати додатак.
 цордова плугин адд хттпс://гитхуб.цом/бродисофт/Цордова-СКЛитеПлугин.гит
Тестират ћемо да ли задана апликација ради, за то идемо на терминал и напишемо сљедећи код
 Цордова емулира андроид
Почеће састављање апликације и ако све функционише, требало би да видимо емулирани уређај као што је приказано испод.

ЕНЛАРГЕ

Након што проверимо да ли апликација ради, почећемо да развијамо наш пример, отворимо датотеку индек.хтмл, додамо следећу јавасцрипт библиотеку у заглавље
 
Затим мењамо блок Укључио сам образац за унос података

Контакт информације
  1. Име
  2. Е-маил
Енграве

Цртаслужиће за приказивање унетих података који се налазе у бази података. Унутар директоријума цсс проналазимо датотеку индек.цсс, отварамо ову датотеку, бришемо њен садржај и додајемо следећи код стила како бисмо обликовању дали облик.
 хтмл, боди, х1, форм, фиелдсет, ол, ли {маргин: 0; паддинг: 0; } боди {позадина: #фффффф; боја: # 111111; породица фонтова: Георгиа, "Тимес Нев Роман", Тимес, сериф; паддинг: 20пк; } формирајте # контакте {бацкгроунд: # 9цбц2ц; -моз-бордер-радиус: 5пк; -вебкит-бордер-радиус: 5пк; паддинг: 20пк; ширина: 400пк; висина: 150пк; } форм # цонтацтс фиелдсет {бордер: ноне; маргин-боттом: 10пк; } форм # цонтацтс фиелдсет: ласт-оф-типе {маргин-боттом: 0; } формирати # контакт легенду {цолор: # 384313; фонт-сизе: 16пк; фонт-веигхт: болд; паддинг-боттом: 10пк; } форм # цонтацтс> фиелдсет> легенд: бефоре {цонтент: "Степ" цоунтер (фиелдсетс) ":"; контра-прираст: сетови поља; } форм # цонтацтс фиелдсет легенд сет {цолор: # 111111; фонт-сизе: 13пк; фонт-веигхт: нормал; паддинг-боттом: 0; } формирати # контакта ол ли {бацкгроунд: # б9цф6а; позадина: ргба (255,255,255, .3); бордер-цолор: # е3ебц3; бордер-цолор: ргба (255,255,255, .6); бордура: чврста; бордер-видтх: 2пк; -моз-бордер-радиус: 5пк; -вебкит-бордер-радиус: 5пк; линија-висина: 30пк; лист-стиле: ноне; паддинг: 5пк 10пк; маргин-боттом: 2пк; } формирати # контакта ол ол ли {бацкгроунд: ноне; граница: нема; флоат: лефт; } образац # ознака контаката {флоат: лефт; фонт-сизе: 13пк; ширина: 110пк; } форм # цонтацтс фиелдсет лабел сет фиелд {бацкгроунд: ноне без понављања лево 50%; линија-висина: 20пк; паддинг: 0 0 0 30пк; ширина: ауто; } форм # цонтацтс фиелдсет лабел сет: ховер {цурсор: поинтер; } форм # цонтацтс тектареа {бацкгроунд: #фффффф; граница: нема; -моз-бордер-радиус: 3пк; -вебкит-бордер-радиус: 3пк; -кхтмл-бордер-радиус: 3пк; фонт: италиц 13пк Георгиа, "Тимес Нев Роман", Тимес, сериф; обрис: нема; паддинг: 5пк; ширина: 200пк; } образац # унос контаката: нот ([типе = субмит]): фоцус, форм # цонтацтс тектареа: фоцус {бацкгроунд: #еаеаеа; } образац # дугме за контакте {бацкгроунд: # 384313; граница: нема; флоат: лефт; -моз-бордер-радиус: 20пк; -вебкит-бордер-радиус: 20пк; -кхтмл-бордер-радиус: 20пк; бордер-радиус: 20пк; боја: #фффффф; дисплеј блок; фонт: 14пк Георгиа, "Тимес Нев Роман", Тимес, сериф; размак између слова: 1пк; маргина: 7пк 0 0 5пк; паддинг: 7пк 20пк; тект-схадов: 0 1пк 1пк # 000000; текстуална трансформација: велика слова; } образац # дугме дугме: ховер {бацкгроунд: # 1е2506; курсор: показивач; }
Након снимања две датотеке поново покрећемо апликацију:
 Цордова емулира андроид
Требали бисмо видети следећи екран:

ЕНЛАРГЕ

Сада када дизајн ради, мораћемо да направимо јавасцрипт код за управљање базом података. За ово ћемо креирати датотеку у јс директоријуму која ће се звати склитедб.јс и референцираћемо је додавањем следећег кода:
 
Унутар датотеке склитедб.јс пишемо следећи код:
 // Као догађај стављамо тренутак покретања апликације и започињање комуникације са уређајем доцумент.аддЕвентЛистенер ("девицереади", онДевицеРеади, фалсе); // променљива поља облика вар наме, емаил; // Покрећем апликацију Креирам функцију базе података онДевицеРеади () {вар дб = виндов.опенДатабасе ("Агенда", "1.0", "Агенда", 100000); дб.трансацтион (ЦреатеДБ, еррорДБ); } Свака трансакција у бази података је направљена са дефинисаним објектом дб и извршава се методом трансакције. Ова метода враћа параметар са резултатом тог извршења који је конвенционално ускладиштен у параметру тк, свака трансакција има функцију параметра која је сама трансакција, на пример уписивање података и функција грешке у случају да трансакција не успе. Настављамо са функцијом ЦреатеДБ и функцијом еррорДБ функцију ЦреатеДБ (тк) {тк.екецутеСкл ('ЦРЕАТЕ ТАБЛЕ ИФ НОТ ЕКСИСТС цонтацтс (ид ИНТЕГЕР НОТ НУЛЛ ПРИМАРИ КЕИ АУТОИНЦРЕМЕНТ, наме ТЕКСТ НОТ НУЛЛ, емаил ТЕКСТ НОТ НУЛЛ)'); } фунцтион еррорДБ (тк, ерр) {алерт ("СКЛ грешка:" + ерр); } // функција Уметните податке у функцију базе података ИнсертСКЛ (тк) {наме = доцумент.гетЕлементБиИд ('наме'). валуе; емаил = доцумент.гетЕлементБиИд ('емаил'). вредност; тк.екецутеСкл ('ИНСЕРТ ИНТО цонтацтс (наме, емаил) ВАЛУЕС ("' + наме + '", "' + емаил + '")'); алерт ('Дневник додат'); } // функција која генерише трансакцију за додавање функције дата рецорд () {вар дб = виндов.опенДатабасе ("Агенда", "1.0", "Агенда", 100000); дб.трансацтион (ИнсертСКЛ, еррорДБ); // Приказ података из табеле дб.трансацтион (ЦонсултДБ, еррорДБ); } // Консултујемо све записе табеле контаката и резултат се користи у функцији ЛистДБфунцтион ЦонсултДБ (тк) {тк.екецутеСкл ('СЕЛЕЦТ * ФРОМ цонтацтс', [], ЛистДБ, еррорДБ); } // Функција ЛистДБ прима параметар трансакције и скуп записа са садржајем упита, пролазимо кроз скуп записа и издвајамо свако поље, генеришемо хтмл листу, а затим је приказујемо у див -у са идентификатором листе кроз иннерХтмл тако да динамичан. функција ЛистДБ (тк, резултати) {вар лен = ресултс.ровс.ленгтх; вар листинг = ''; листинг = листинг.цонцат ("Оглас:" + лен + "контакти"); за (вар и = 0; и
'+ ресултс.ровс.итем (и) .наме+' '+ ресултс.ровс.итем (и) .емаил); } доцумент.гетЕлементБиИд ('листа'). иннерХТМЛ = листа; }
Када имамо сав код, поново компајлирамо апликацију са терминала са следећим кодом
 Цордова емулира андроид
Када се емулатор примени са апликацијом, почећемо да додајемо записе у наш дневни ред и они ће се појавити испод, уређај чува податке које стално уносимо у виртуелну меморију, што значи да се база података неће брисати сваки пут. Када извршимо апликацију у емулатору или на стварном уређају, моћи ћемо да видимо податке које смо регистровали.

ЕНЛАРГЕ

Да бисмо уклонили ове податке, мораћемо да направимо скл упит да бисмо уклонили табелу и поново је креирали или избрисали само податке, то ћемо видети у другом водичу.Да ли вам се допао и помогао овај водич?Можете наградити аутора притиском на ово дугме да бисте му дали позитиван поен
wave wave wave wave wave