Mga tip sa automation. Mga tip sa automation Pag-install ng 1c mobile application sa isang Android emulator

Nang hindi pumunta sa mga detalye, ang mobile platform ay ang parehong 1C file database tulad ng sa isang desktop computer, gumagana lamang ito sa mga mobile operating system - iOS at Android.
Ang pangunahing pagkakaiba sa pagitan ng mobile 1C at stationary ay gumagamit ito ng espesyal na interface na nakatuon sa touch control sa maliliit na screen, at mayroon ding kakayahang makipag-ugnayan sa isang mobile device (kumuha ng larawan, kumuha ng mga coordinate, magpadala ng SMS, atbp.). Ang 1C mobile platform ay isang set ng mga tool na nagbibigay-daan sa iyong lumikha ng mga solusyon para sa mga mobile operating system.

Ang pagbuo ng mga solusyon para sa mobile platform ay isinasagawa sa parehong 1C configurator bilang
pagbuo ng mga maginoo na solusyon. Gayundin, sa ngayon, isa pang development environment ang available sa beta version - "1C: Enterprise Development Tools" batay sa Eclipse.

Mga kakayahan sa mobile ng mobile platform

Dahil hindi nakatigil ang mobile platform, malinaw na dapat itong mayroong ilang functionality na available kapag nagtatrabaho sa isang mobile device. Halimbawa, hindi kami nagulat na ang isang nakatigil na platform ay maaaring mag-print ng mga dokumento sa isang printer? Sa kasong ito, ginagamit ng nakatigil na platform ang mga kakayahan ng operating system kung saan ito tumatakbo. Ang isang halimbawa ng malapit na pagsasama ay ang HTML na patlang ng dokumento sa 1C, dahil sa kaso ng Windows ang Internet Explorer engine ay ginagamit, at sa Linux.
- default na browser engine. Ngayon tingnan natin ang listahan ng mga feature na mayroon ang mobile platform sa mga mobile system:

  • Paggawa gamit ang telephony - pagtatrabaho sa mga log ng tawag (kasaysayan ng tawag) o ang kakayahang tumawag
  • Paggawa gamit ang mga mensahe (SMS at MMS) - hindi lamang pagpapadala, ngunit pagbabasa din ng mga natanggap na mensahe. Ito ay maginhawa kapag kailangan mo, halimbawa, upang mahuli ang isang SMS mula sa isang bangko ng kliyente at agad na magpasok ng isang gastos o resibo ng pera batay dito. Gayunpaman, hindi mabasa ng 1C ang mga kasalukuyang mensaheng SMS.
  • Mga tool sa geopositioning - pagkuha ng mga coordinate mula sa mga satellite at network. Pagkuha ng isang coordinate sa pamamagitan ng address o isang address sa pamamagitan ng coordinate. Pagpapakita ng data sa isang mapa
  • Paggawa gamit ang multimedia - ang kakayahang kumuha ng mga larawan, video at audio recording
  • Pag-scan ng mga barcode - pag-scan ng mga barcode gamit ang camera ng telepono: parehong linear (EAN13, Code39, atbp.) at dalawang-dimensional (QR, atbp.)
  • Paggawa gamit ang e-mail - ang pangunahing pagkakaiba sa landline ay na sa landline 1C kailangan mo lang irehistro ang lahat ng mga setting ng koneksyon, at sa mobile OS, halimbawa Android, mayroon ka nang lokal na mail. Samakatuwid, upang magpadala ng liham hindi mo kailangang magpasok ng data ng pagpaparehistro sa 1C mismo.
  • Paggawa gamit ang mga contact - pagbabasa, pagsusulat, pag-edit ng mga contact sa iyong device
  • Paggawa gamit ang kalendaryo - paggawa at pagbabasa ng mga paalala sa kalendaryo
  • Ang oryentasyon ng screen ay ang kakayahang subaybayan ang katotohanan na ang screen ng device ay pinaikot, na nangangahulugang maaari mong, halimbawa, i-redraw ang ilang mga form upang mas maganda ang hitsura nila sa portrait na oryentasyon, at hindi lamang paikutin ang landscape ayon sa prinsipyong "as is" at umaasa na ang 1C mismo ay nagsusukat sa anyo, kung kinakailangan
  • Ang pagtatrabaho sa mga abiso ay isa sa mga pinaka-kawili-wili at medyo mahirap na mga punto upang mabilis na ipaliwanag. Ngunit sa madaling sabi, ito ay isang pagkakataon upang ipaalam ang mobile 1C tungkol sa isang bagay, halimbawa, na kailangan itong i-synchronize, atbp.

Ang mga kakayahan ng mobile 1C ay hindi limitado sa listahang ito, ngunit isasaalang-alang namin ito nang mas detalyado sa mga sumusunod na publikasyon.

Ang listahan sa itaas ay ang mga karaniwang kakayahan ng 1C, at mayroon ding mga karaniwang kakayahan ng mobile system mismo, na magagamit ng 1C sa parehong paraan kung paano gumagana ang nakatigil na 1C sa mga printer.

Saan ako makakakuha ng mobile platform?

Maaari mong i-download ang archive gamit ang mobile platform mula sa 1C update site. Bilang karagdagan, maaari kang makakuha ng isang mobile platform mula sa isang landline platform nang libre. Kasabay nito, ang nakatigil na bersyon ay hindi ang buong bersyon, ngunit isang pagsasanay.

Kaya, interesado kami sa mobile.zip archive, na naglalaman ng mga sumusunod na file:

  • 1CEnterprise_en.htm
  • 1CEnterprise_ru.htm
  • Android
  • MobileAppMaker

Sa mga .htm na file ay makakahanap ka ng isang kasunduan sa lisensya na nagbibigay-daan sa iyong bumuo at subukan ang 1C sa 50 mobile device.
Susunod na makikita mo ang tatlong folder, ang bawat isa ay naglalaman ng mga file na kinakailangan upang makuha
ang huling bersyon ng iyong aplikasyon. Tingnan natin ang mga ito sa pagkakasunud-sunod.
Ang folder ng Android ay naglalaman ng mga sumusunod na file:

  • 1cem-arm.apk
  • 1cem-x86.apk
  • prjandroid-arm.zip
  • prjandroid-x86.zip

Ang mga file na may extension na .apk ay isang platform para sa mga developer na maaaring i-install sa mismong telepono. At ang natitirang mga file ay kailangan upang i-compile ang huling bersyon. Pakitandaan na ang mga Android device ay gumagamit ng dalawang arkitektura ng processor: arm at x86. Alinsunod dito, para sa bawat arkitektura kailangan mong gamitin ang iyong sariling bersyon ng application. Ang pagtukoy kung anong arkitektura mayroon ang iyong device ay napakasimple - kung mayroon kang isang Intel processor, kung gayon ito ay x86, lahat ng iba ay braso. Ang pinakamahalagang bagay ay huwag malito ito, dahil kung susubukan mong i-install ang bersyon ng x86 sa isang telepono na may processor ng braso, mayroong isang malaking pagkakataon na mai-install ito (bagaman maaari itong magbigay ng isang error sa panahon ng pag-install), ngunit pagkatapos ay hindi gagana nang tama o magbibigay lang ng error sa pagsisimula at pagsasara.
Ang folder ng iOS ay naglalaman ng mga file na kinakailangan upang gumana sa mga iOS device.

  • prjios.zip
  • prjios_en_ru.zip

At sa huling folder ng MobileAppMaker mayroong isang configuration file na "Mobile Application Builder".

Itutuloy...

Ang 1C:Enterprise mobile platform ay isang set ng mga tool at teknolohiya para sa mabilis na pag-develop ng mga application para sa mga mobile operating system iOS, Android, Windows Phone / 8.1 / 10, gamit ang parehong development environment (Configurator o 1C:Entrprise Development Tools) at ang parehong mga diskarte sa pag-develop, na ginagamit para sa "regular" na mga 1C application. Ang resulta ay autonomous, offline na mga application, ngunit may kakayahang makipagpalitan ng impormasyon sa labas ng mundo gamit ang isang malawak na hanay ng mga tool sa pagsasama na ibinigay ng platform: Mga serbisyo sa Web at HTTP, e-mail, atbp. Dahil ang mga exchange protocol ay platform-independent, ang 1C mobile platform, bukod sa iba pang mga bagay, ay isang paraan ng mabilis na paglikha ng mobile front-end para sa halos anumang solusyon sa server.

Background

Noong mga araw ng 1C:Enterprise na bersyon 8.0 (at mga kasunod na bersyon), mayroong isang produkto ng software na tinatawag na "Extension para sa Pocket PCs". Pinapayagan ng extension ang paggawa ng mga produkto para lang sa Windows Mobile, Windows CE, atbp. Ang produkto ay may sariling configurator at server, at suportado hanggang sa paglabas ng 1C:Enterprise na bersyon 8.3. Ang pinakabagong bersyon ng extension (8.2.9) ay inilabas noong Oktubre 2013, at ang buong suporta ay natapos noong Enero 1, 2015.
Ang extension ay may limitadong paggamit kahit na sa panahon ng kasagsagan ng Windows Mobile communicators, at ang pag-alis ng mga naturang device mula sa mobile market ay malinaw na hindi nakadagdag sa katanyagan ng produktong software na ito. Nakuha na ng iOS at Android device ang halos buong market ng mobile device, at naging malinaw na ang suporta para sa mga operating system na ito ay isa sa mga pangunahing punto para sa isang system na dapat patakbuhin sa modernong mundo ng mobile. Tila halata rin na ang pangunahing diskarte ng umiiral na 1C:Enterprise platform ay dapat gamitin sa mga mobile device: dapat munang isipin ng developer ng application ang tungkol sa paglutas ng mga problema sa application, at pangalawa, tungkol sa kung anong mga kakayahan ng operating system na ginagamit niya upang malutas ang mga ito. mga problema. Sa madaling salita, kailangan namin ng tool na naghihiwalay sa developer ng application mula sa mga kakaibang katangian ng isang partikular na mobile OS at development tool.

Platform ng mobile

Batay sa karanasan ng pagbuo at pagpapatakbo ng mga extension para sa mga pocket computer, napagpasyahan na bumuo ng isang dalubhasang sistema na makakatugon sa ilang mga kinakailangan:
  • dapat itong suportahan ang mga modernong sikat na mobile operating system at mga device na nagpapatakbo ng mga ito. Una sa lahat, ito ay iOS mula sa Apple at Android mula sa Google.
  • dapat payagan ng system na ito ang paggamit ng mga binuong application sa istilong pinagtibay sa mga modernong mobile device. Sa partikular, dapat umasa ang interface sa manu-manong kontrol (literal) gamit ang mga touch screen.
  • ang system ay dapat magbigay ng pare-parehong interface ng software para sa pagpapatupad ng iba't ibang partikular na mekanismo, anuman ang ginamit na mobile OS.
  • ang developer ay dapat gumamit ng parehong tool at ang parehong mga diskarte sa pag-develop tulad ng kapag bumubuo ng mga application para sa isang "regular" na computer.
  • Ang isang developer ng application ay dapat bumuo ng isang solusyon sa aplikasyon sa isang pamilyar na kapaligiran sa pag-unlad, kung posible gamit ang isang code para sa mga desktop at mobile system.
  • ang interface ng isang solusyon sa application na tumatakbo sa isang mobile device ay dapat na katulad para sa iba't ibang mga platform at, sa pangkalahatan, ay malinaw na nakikilala.
Ang resulta ng pag-unlad ay ang tinatawag na mobile platform, na inilabas noong Mayo 29, 2013 sa mga bersyon para sa iOS at Android. Ang 1C:Enterprise mobile platform ay isang hanay ng mga tool at teknolohiya na nagbibigay-daan sa iyong lumikha ng mga application para sa mga mobile operating system iOS, Android, Windows Phone / 8.1 / 10, gamit ang parehong development environment (Configurator) at ang parehong mga diskarte sa pag-develop tulad ng para sa regular. mga application sa 1C:Enterprise platform. Ang resulta ay autonomous, offline na mga application, ngunit may kakayahang makipagpalitan ng impormasyon sa labas ng mundo gamit ang isang malawak na hanay ng mga tool sa pagsasama na ibinigay ng platform: Mga serbisyo sa Web at HTTP, email, atbp.
Ang mobile platform ay medyo mahusay na natanggap ng komunidad, at iba't ibang mga artikulo sa paksang ito ay nagsimulang lumitaw (halimbawa, at). Upang makabuo ng isang ganap na gumaganang application na tumatakbo nang sabay-sabay sa karamihan ng mga mobile device, nangangailangan na ngayon ng kaunting oras at kaalaman, na hindi naman talaga naiiba sa kaalaman ng isang "regular" na developer ng application sa 1C:Enterprise platform. Siyempre, ang gayong mababang hadlang sa pagpasok ay umaakit sa mga developer na kailangang magbigay ng ilang pangunahing functionality para sa mga empleyadong nagtatrabaho sa kalsada, pamamahala, at iba pang mga mobile na empleyado na kailangang magtrabaho sa corporate system.
Madaling magsimulang bumuo ng mobile application sa 1C:Enterprise platform. Sa Configurator, kailangan mong itakda ang "Use Purpose" property ng configuration sa "Mobile device" value. Sa kasong ito, magiging hindi available ang ilang object ng configuration ng application (mga plan sa uri ng katangian, mga chart ng mga account, atbp.), ngunit magiging available ang mga property na partikular sa mga mobile application (halimbawa, mga built-in na tool sa multimedia at geopositioning ng isang mobile device, atbp. .).


Kasabay nito, maaari mong i-debug ang mga pangunahing algorithm ng application (hindi direktang nauugnay sa mga detalye ng mobile) nang direkta sa Configurator sa computer ng developer. Kasabay nito, inirerekumenda na i-frame ang mga seksyon ng code kung saan ang pag-andar ng "mobile" ay na-access na may naaangkop na mga tagubilin sa preprocessor upang maiwasan ang mga error kapag isinasagawa ang code sa isang personal na computer:
#If the Mobile Application is a Client Then Data = GeopositioningServer.GetProviderName(); #TheEndIf
Simula sa bersyon 8.3.7 ng mobile platform, ang pag-debug ng application nang direkta sa isang mobile device ay naging available (higit pa dito sa ibaba).

Ang pagbuo sa isang mobile platform ay maaaring sumunod sa iba't ibang mga diskarte, ngunit may ilang mga pangunahing punto na maaaring i-highlight. Mula sa punto ng view ng pagbuo ng mobile application mismo, ang functional richness at papel nito sa IT infrastructure ng enterprise:

  • ang isang mobile application ay maaaring maging isang integral at mahalagang bahagi ng umiiral na sistema ng impormasyon ng isang enterprise. Ang mobile application ay magbibigay ng isang interface at iba pang mga kakayahan (kabilang ang data exchange) na iniayon sa mga kakayahan ng umiiral na sistema ng impormasyon. Sa kasong ito, ang mobile application ay napakahigpit na konektado sa "regular" na sistema ng impormasyon at hindi maaaring patakbuhin nang hiwalay mula dito.
  • ang isang mobile application ay gumaganap ng mga partikular na gawain na halos walang koneksyon sa enterprise information system. Mayroon lamang isang minimum na hanay ng data na ipinagpapalit sa pagitan ng mobile application at ng information system. Sa kasong ito, malamang, gagawin ng mobile application ang palitan gamit ang ilang standardized protocol, na ginagawang posible na gamitin ang mobile application na ito sa ganap na magkakaibang mga kaso at sitwasyon.
Ang dalawang sitwasyong inilarawan sa itaas ay maaaring ituring na mga matinding opsyon. Ngunit hindi lamang ito ang mga pagpipilian sa pag-unlad. Ang isang developer ng application ay maaaring malayang pumili ng mga opsyon sa pagsasama sa pagitan ng isang mobile application at ang sistema ng impormasyon na nagsisilbing back office para dito.
Ang mobile application ay binuo bilang isang ganap na standalone na configuration, ngunit maaaring ibahagi ang ilan sa source code sa "magulang" na configuration. Sa pamamagitan ng paraan, ang pagsasaayos ng "magulang" ay maaaring hindi pisikal na umiiral (halimbawa, kung gumagawa ka ng ilang uri ng unibersal na aplikasyon na maaaring gumana sa iba't ibang mga system gamit ang isang unibersal na protocol).

Mobile platform device

Ano ang isang mobile platform at ano ang magagawa nito?
Upang maging patas, ang mobile platform ay isa lamang sa mga bahagi ng buong complex, salamat sa kung saan gumagana ang 1C:Enterprise 8 sa mga mobile device. Kaya, ang developer ng application ay gumagana sa mga sumusunod na bahagi:
  1. Ang mobile platform mismo ay ang mobile na bahagi ng 1C:Enterprise framework. Maaari itong maging regular (na ginagamit sa pagbuo ng application para sa publikasyon sa app store) at isang mobile developer platform, na ginagamit (sorpresa) sa pagbuo ng isang mobile application.
  2. Ang configuration ng mobile ay isang configuration ng 1C:Enterprise program system, na nakasulat sa anyo ng isang XML file.
  3. Ang kumbinasyon ng isang mobile platform at isang mobile configuration ay nagreresulta sa isang mobile application.
  4. Ang tagabuo ng mobile application ay isang espesyal na solusyon sa application na maaaring gumawa ng isang yari na mobile application file mula sa isang mobile platform, configuration, screensaver, icon at iba pang mga bahagi, na maaaring i-upload sa Apple AppStore, Google Play, Windows Phone Apps / Windows Apps mga tindahan.
Bakit ang hirap ng lahat? Bakit hindi ito magawa sa isang mobile device nang eksakto kung paano ito ginagawa sa isang malaking platform? Yung. mag-install ng isang mobile platform sa device at mag-load ng anumang bilang ng mga configuration/application dito? Ito ay ipinagbabawal ng mga paghihigpit sa paglilisensya sa mga application na ipinamamahagi sa pamamagitan ng mga tindahan ng aplikasyon. Halimbawa, kung ang iyong app ay nag-download ng executable code (sa anyo ng isang script) sa Internet, hindi ito lalabas sa Apple app store. Dapat itong maunawaan, gayunpaman, na ang kakayahang mag-download ng anumang configuration na available sa mobile platform ng developer ay hindi inilaan para sa pamamahagi ng mga mobile application kahit na sa loob ng parehong kumpanya, hindi pa banggitin ang pamamahagi sa mga kliyente ng developer.
Matapos ang mobile application ay nasa target na mobile device, kinakailangan na gumamit ng ilang uri ng database (ang data ay dapat na naka-imbak sa isang lugar). Bilang isang database engine, ang mobile platform ay gumagamit ng sarili nitong database engine, na naka-port sa mobile platform mula sa platform para sa isang personal na computer. Ito ay compact at sapat na mabilis, ngunit ang pangunahing bagay ay nagbibigay ito ng eksaktong parehong pag-uugali na nakasanayan ng mga developer ng application kapag nagtatrabaho sa isang platform para sa mga personal na computer.
Kapansin-pansin din na sa loob, ang mobile application ay binuo ayon sa parehong pamamaraan tulad ng gawain ng isang regular na platform na may isang bersyon ng file ng base ng impormasyon: mayroong isang bahagi ng kliyente, mayroong isang bahagi ng server, mayroong isang database , at mayroong pakikipag-ugnayan ng client-server.
Ang mobile platform mismo ay isinulat bilang isang katutubong application, na pinagsama-sama sa binary code para sa mga pangunahing arkitektura ng processor na kasalukuyang ginagamit sa mundo ng mobile: ito ang ARM v5 at mas mataas na arkitektura at x86.
Bilang karagdagan, maaaring kailanganin ang mga espesyal na pahintulot upang makipag-ugnayan sa ilang partikular na kakayahan ng isang mobile device (telephony, GPS, gumagana sa built-in na camera, atbp.). Para sa iOS, direktang itinakda ang mga ito sa panahon ng pagpapatakbo ng application mismo, at para sa Android, tinukoy ang mga pahintulot kapag lumilikha ng application. Ang mga kinakailangang pahintulot ay tinukoy kapag bumubuo ng isang mobile application at ginagamit ng tagabuo ng mobile application, ngunit higit pa sa tagabuo sa ibang pagkakataon.

Kaunti tungkol sa platform ng developer

Habang bumubuo kami ng isang mobile application, hindi kami nakatali sa mga paghihigpit sa paglilisensya na ipinataw sa mga mobile application na ipinamahagi sa pamamagitan ng mga tindahan ng aplikasyon. Nangangahulugan ito na magagamit natin ang 1C mobile platform sa parehong paraan tulad ng paggamit natin ng "malaking" platform sa isang personal na computer - i-install ang mismong mobile platform sa isang smartphone/tablet at i-load dito ang mga configuration ng mobile application. Pagkatapos ng paglunsad, ipapakita sa amin ng platform ang isang listahan ng mga application na nakarehistro dito:

Upang magdagdag ng bagong application sa platform, kailangan mong maglagay ng XML file kasama ang paglalarawan nito sa isang mapagkukunang naa-access mula sa isang mobile device sa pamamagitan ng HTTP protocol. Ang pinaka-maginhawang paraan upang gawin ito ay mula sa Configurator, sa pamamagitan ng menu na "Configuration \ Mobile application \ Publish". Sa kasong ito, ang XML file na may configuration ng application ay inilalagay sa isang web server sa computer ng developer (ayon dito, ang computer na ito ay dapat na may web server - IIS o Apache).

Kung tinukoy mo ang opsyong "I-restart mula sa configurator" para sa application, ang application sa mobile device ay awtomatikong ia-update mula sa computer ng developer sa tuwing ina-update ng developer ang XML configuration file na matatagpuan sa web server.
Kapag pinagana ang opsyong "Pinapayagan ang Pag-debug", ang hakbang-hakbang na pag-debug ng application sa isang mobile device ay posible mula sa Configurator sa computer ng developer (sa Configurator, dapat piliin ang opsyong "Pag-debug sa pamamagitan ng HTTP" sa " Tools\Options” menu). Kung nagtakda ka ng mga breakpoint sa code sa Configurator at piliin ang command na "Mobile application - simulan ang pag-debug", ang mobile application sa device ay titigil kapag naabot ng executing code ang breakpoint, at sa Configurator maaari mong tingnan ang mga halaga ng variable, ang call stack, atbp.

Ano kayang gagawin niya?

Kaya, ano ang magagawa ng mobile platform? Tama na:)
Kung hindi ka gumagamit ng mga partikular na termino ng 1C:Enterprise, ang mobile platform ay nagbibigay ng kakayahang magtrabaho kasama ang impormasyon sa regulasyon at sanggunian, gumuhit ng mga dokumentong naglalarawan ng ilang panlabas na pagkilos, tumingin ng mga ulat, makipag-ugnayan sa labas ng mundo gamit ang mga serbisyo ng Internet, at marami pa. Yung. nagbibigay ito ng pagkakataon sa isang developer ng application na magsulat ng isang medyo functional na application, halimbawa, isang home finance accounting program, isang field trading program, at iba pa.
Ngunit bilang karagdagan sa karaniwang functionality na makikita sa isang platform para sa isang personal na computer, ang mobile platform ay dapat magbigay ng trabaho na may mga partikular na kakayahan na natatangi sa mga mobile device:
  • nagtatrabaho sa mga tawag at log ng tawag;
  • nagtatrabaho sa mga maikling mensahe (SMS) at ang kanilang listahan;
  • mga contact;
  • mga kalendaryo;
  • geopositioning (nang walang routing);
  • nagbibigay-daan sa iyo na kumuha ng mga litrato, pati na rin ang pag-record ng video at audio;
  • tumugon sa mga pagbabago sa oryentasyon ng screen;
  • gumana sa mga abiso (lokal at PUSH, parehong direkta at sa pamamagitan ng isang espesyal na serbisyo ng tagapamagitan);
  • i-scan ang mga barcode at QR code gamit ang camera
  • Monetization ng mga mobile application (ibig sabihin, isang paraan upang bigyan ang developer ng mobile application ng mga pagkakataon para sa karagdagang kita):
    • Makipagtulungan sa mga serbisyo sa pamimili ng Apple In-App Purchase (para sa iOS OS) at Google Play In-App Billing (para sa Android OS), kung saan maaari mong ayusin ang iba't ibang uri ng mga subscription, pagbili ng functionality, atbp. sa isang mobile application
    • Pagpapakita ng advertising sa mga mobile application (kasalukuyang sinusuportahan ang mga serbisyo ng iAd para sa iOS at AdMob para sa Android).
  • atbp.
Malinaw na maaaring hindi available ang ilang feature sa bawat partikular na device, samakatuwid, upang matukoy kung ano ang maaaring gawin sa device kung saan tumatakbo ang mobile application, mayroong mga espesyal na pamamaraan na nagbibigay-daan sa iyong malaman kung ano ang available sa device na ito. , halimbawa, ang kakayahang mag-dial ng mga numero o hindi. Kaya, tinatayang ang sumusunod na scheme ng paggamit ay ipinatupad: sinusuri namin kung magagamit ang ilang tampok o hindi, at kung posible, ginagamit namin ito:
Kung Telephony Tools.SupportedDialing() Then Telephony Tools.DialNumber(PhoneNumber, CallAgad); tapusin kung;
Ang pagtatago ng mga detalye tungkol sa mobile OS na ginamit mula sa developer ng application at pagbibigay sa kanya ng pinag-isang mekanismo para sa paggamit ng mobile functionality ay isang mahalagang gawain para sa amin. Naniniwala kami na matagumpay naming nalutas ang problema. Ang mga pagkakaiba sa mga ipinatupad na mekanismo ay alinman sa wala o pinaliit. Maliban, siyempre, para sa mga kaso kung saan walang pag-andar sa isa sa mga operating system.
Halimbawa, ang pamamaraan para sa pagtatrabaho sa mga PUSH notification ay ibang-iba sa pagitan ng Google at Apple. Gumawa kami ng maraming pagsisikap upang pag-isahin ang mekanismo para sa pagtatrabaho sa mga notification ng PUSH mula sa code ng aplikasyon. Sa kaso ng isang mobile application, nagtagumpay kami halos 100%: ang parehong application code sa isang mobile device ay nagpoproseso ng pagtanggap ng mga PUSH notification sa parehong iOS at Android. At ang code para sa pagpapadala ng mga notification ng PUSH sa application ng server ay pareho din ang hitsura. Ngunit upang makamit ang naturang pag-iisa, kailangan naming bumuo ng isang espesyal na proxy server na https://pushnotifications.1c.com/, na nagtatago mula sa developer ng iba't ibang mga diskarte para sa pagtatrabaho sa Apple Push Notification Service (APNS) at Google Cloud Messaging (GCM ). Ang buong pagkakaiba ay nakasalalay sa iba't ibang mga setting nang direkta sa proxy site https://pushnotifications.1c.com/; upang gumana sa APNS, kailangan mong mag-upload ng isang SSL certificate sa site (na ibinigay ng Apple para sa application sa kahilingan ng developer upang gumana sa GCM, kailangan mong tukuyin ang isang natatanging identifier ng application.
Malinaw, imposibleng ipatupad kaagad ang lahat ng feature na gusto mo sa isang mobile application. At palagi kang kailangang makahanap ng kompromiso sa pagitan ng ilang napaka-kapaki-pakinabang na bagay. At kung may nawawala ka, sumulat sa amin tungkol sa kung anong mga gawain sa negosyo (pagkatapos ng lahat, ang isang platform ay, una sa lahat, isang tool para sa pagpapatupad ng mga gawain sa negosyo!) hindi mo malulutas at kung anong mekanismo ang makakatulong sa iyo dito.

Anong itsura?

Ang graphical na interface ng mobile platform ay isang hiwalay na isyu. Sa 1C:Enterprise, tulad ng alam mo, ang interface ay inilarawan nang deklaratibo. Ito, sa isang banda, ay nagpapataw ng ilang mga paghihigpit sa pagbuo ng UI (halimbawa, walang posibilidad ng pixel-by-pixel na pagpoposisyon), ngunit, sa kabilang banda, pinapayagan nito ang platform na pantay na i-render ang interface sa mga screen ng iba't ibang laki, sa manipis at web client. Sinubukan naming sumunod sa parehong prinsipyo sa mobile platform. Gaano natin ito nagawa? Subukan nating malaman ito.
Sa mga unang bersyon ng mobile platform (hanggang sa 8.3.5 inclusive), ang graphical na interface ng mga application ay mukhang pamilyar sa mga sopistikadong gumagamit ng 1C; sa katunayan, inilipat niya ang pamilyar na interface mula sa mga bersyon ng "desktop" ng 1C sa mundo ng mobile. Ngunit mula sa punto ng view ng mga gumagamit na dati ay hindi pamilyar sa 1C, ang interface ay mukhang archaic.
Isinasaalang-alang ang mga komento at mungkahi, radikal naming binago ang aming diskarte sa mobile interface sa bersyon 8.3.6. Masasabi naming nakagawa kami ng ganap na bagong mobile interface para sa aming mga application. Marami itong pagkakatulad sa aming interface ng Taxi. Ang modelo ng pagbuo para sa mga developer ng mobile application ay tumutugma sa modelo ng pag-unlad sa Taxi. Kasabay nito, ganap na sumusunod ang mobile interface sa mga diskarte sa disenyo na pinagtibay sa mga mobile application. Ang interface ay ganap na isinasaalang-alang ang mga detalye ng mobile na mundo: maliit na laki ng screen (na nangangahulugang ang disenyo ng mga graphic na elemento ay dapat na maging mas asetiko - walang mga anino, gradients), mayroong suporta para sa mga galaw ng daliri, atbp. Kagiliw-giliw na katotohanan: ang bagong mekanismo ng platform na responsable para sa paglalagay ng mga elemento sa anyo (layouter) ay naging matagumpay at napapanahon para sa mobile platform na ito ay inilabas nang mas maaga (sa bersyon 8.3.6) kaysa sa PC platform (sa bersyon 8.3 .7) , kung saan ito ay pangunahing inilaan.
Sa larawan makikita mo kung paano nagbago ang aming interface.
Application na "Pamamahala ng isang maliit na kumpanya" sa bersyon 8.3.5 ng mobile platform:


Ito ay pareho sa bersyon 8.3.6:

At ito ang hitsura ng interface ng mobile platform sa totoong buhay:

Ang kolektor - at anong uri ng hayop ito?

Tulad ng nabanggit kanina, ang isang mobile application ay binubuo ng ilang mga bahagi (ang mobile platform mismo, pagsasaayos, iba't ibang mga mapagkukunan), na dapat bumuo ng isang solong kabuuan upang mailagay ang application sa tindahan. Upang gawing mas madaling gawing application ang mga bahagi, binuo ang isang tagabuo ng mobile application. Ito ay isang pagsasaayos (application) na nilikha sa 1C:Enterprise platform, na nag-iimbak sa database nito ng lahat ng mga sangkap na kinakailangan upang lumikha ng isang mobile application. Upang magawa ng kolektor ang trabaho nito, kailangan mong mag-download at mag-install ng iba't ibang mga pakete ng software na kailangan para sa operasyon nito (Java at Android SDK, atbp.), pagkatapos ay tukuyin ang mga landas patungo sa mga paketeng ito sa mga setting ng kolektor at magtakda ng ilang karagdagang mga parameter (mga key ng developer atbp.).


Pagkatapos ng pagsasaayos, ang assembler ay handa nang gamitin. Sa pangkalahatan, ang pakikipagtulungan sa kolektor ay ganito ang hitsura:
  1. I-download ang bersyon ng 1C mobile platform kung saan bubuuin namin ang application
  2. Nilo-load ang configuration kung saan bubuuin namin ang mobile application
  3. Lumilikha kami ng isang mobile application kung saan ipinapahiwatig namin kung aling mga platform (Android, iOS, Windows) ang dapat gawin, kung anong configuration at platform ang dapat gamitin (lalo na, ipahiwatig kung aling certificate ang gagamitin para sa pagbuo para sa iOS kung gumagana ang application. PUSH- notification).
  4. Bumubuo kami ng mobile application para sa lahat ng napiling platform sa isang click
  5. "Sa isa pang pag-click" ipinapadala namin ang mga nakolektang mobile application sa mga tindahan ng application (kung ito ay isang application para sa iOS o Android). Dapat na manu-manong i-download ang application sa mga tindahan ng Windows Apps / Windows Phone Apps, dahil... Hindi pa nagbibigay ang Microsoft ng API para sa paglalagay ng application sa store.
Dapat itong hiwalay na tandaan na ang kolektor ay hindi kailangan upang bumuo at mag-debug ng isang mobile application. Upang gawin ito, maaari mong gamitin ang platform ng developer ng mobile at mga tool ng Configurator upang ilipat ang configuration sa mobile device. Ngunit upang ipamahagi ang isang mobile application, kailangan mo ng isang kolektor.

Mga application sa mobile platform

Ang kumpanya ng 1C mismo ay gumagawa ng ilang application sa mobile platform na mga mobile client ng 1C server application (1C: Document Flow, 1C: Small Firm Management, atbp.). Ang mga application na ito ay nagpapatupad ng ilang subset ng functionality ng "regular" na mga kliyente. Sa kaso ng mobile na bersyon ng 1C: Small Firm Management, ang functionality ay sapat para sa buong paggamit ng program, at madalas kaming nakakita ng sitwasyon kung saan ang mobile na bersyon ng application ay sapat para sa mga kliyente na magsagawa ng negosyo.
Ginagamit ng aming mga kasosyo ang mobile platform para bumuo ng mass-produced na mga mobile application na ipinamahagi sa pamamagitan ng mga application store, at para sa mga custom na application na ginawa ayon sa mga kahilingan ng mga partikular na kliyente. Sa mga mass-produced na application, may mga application na gumagamit ng non-1C back-end bilang central data storage.
Kabilang sa mga mobile application na nilikha sa kahilingan ng mga kliyente, maaari naming banggitin ang mobile client para sa 1C: Manufacturing Enterprise Management, na nilikha sa pamamagitan ng pagkakasunud-sunod ng isang malaking machine-building holding. Halos isang daang empleyado ng holding ang gumagamit ng mobile application sa mga maiinit na tindahan, kung saan para sa mga kadahilanang pangkaligtasan imposibleng mag-install ng mga desktop computer. Ang built-in na camera ng isang mobile device ay ginagamit upang basahin ang mga barcode ng mga produkto at hanapin ang mga ito sa direktoryo ng item, pinapayagan ka ng mobile application na maunawaan kung anong yugto ng teknolohikal na kadena matatagpuan ang isang naibigay na produkto, markahan ang pagpasa ng susunod na operasyon ng produkto, atbp.

Konklusyon

Sinubukan naming ilarawan nang napakababaw ang mobile platform, kung ano ang pinapayagan nitong gawin mo at kung bakit naging ganito ang nangyari. Ang artikulong ito ay halos walang sinasabi tungkol sa mobile Windows. Mayroong ilang mga dahilan para dito: una, ang bersyon ng mobile platform para sa Windows ay inilabas kamakailan (“1C:Enterprise” na bersyon 8.3.7), at pangalawa, ang bersyon na ito ng mobile platform ay walang anumang makabuluhang pagkakaiba mula sa pagpapatupad para sa iba pang mga mobile operating system. Natural, dadagdagan namin ang functionality para sa Windows OS. Pati na rin ang pagtaas ng functionality ng mobile platform sa kabuuan. Kaya, sa malapit na hinaharap mayroon kaming suporta para sa mga panlabas na bahagi sa mobile platform; ang mekanismong ito (matagal nang available sa "malaking" platform) ay magbibigay-daan sa mga developer na ipatupad ang functionality na hindi available para sa ilang kadahilanan sa mobile platform.
Ayon sa kaugalian, ang mga lakas ng platform ng teknolohiyang 1C:Enterprise ay ang kadalian ng paggamit nito para sa mga developer at ang bilis ng paggawa at pagbabago ng mga application ng negosyo. Dinala ng 1C mobile platform ang parehong mga trump card na ito sa mundo ng mobile. Ang 1C mobile platform ay isang pagkakataon upang mabilis na bumuo ng isang application na tumatakbo sa tatlong pinakasikat na mga mobile platform (iOS, Android, Windows Phone / 8.1 / 10). At salamat sa malawak na hanay ng magagamit na mga tool sa pagsasama-sama ng platform-independent (mga serbisyo sa Web at HTTP, atbp.), ang 1C mobile platform ay ang kakayahang mabilis na lumikha ng isang mobile client para sa tatlong mobile platform para sa halos anumang server application na sumusuporta sa alinman sa mga magagamit ang mga paraan ng pagsasama sa 1C platform (mga serbisyo sa Web at HTTP, pagbabahagi ng file, atbp.).

Ang mga rehistradong user lamang ang maaaring lumahok sa survey. , Pakiusap.

Ang pagbuo ng mga mobile application sa 1C platform para sa mga sinanay na 1C programmer na nagtatrabaho sa isang nakatigil na platform ay nangangailangan ng isang minimum na hanay ng mga kasanayan at may napakababang threshold para sa pagpasok sa mobile development (kumpara sa iba pang mga platform para sa mobile development).

Sa artikulong ito, susubukan kong ilarawan ang mga pangunahing punto ng pagtatrabaho sa mobile platform nang sunud-sunod (tulad ng isang mini F.A.Q. para sa pagsisimula ng pag-develop para sa mobile platform).

Kaya, magsimula tayo:
1. Ini-install namin ang nakatigil na 1C platform, siguraduhing tukuyin ang bahagi ng "Mga module ng extension ng web server" sa panahon ng pag-install.
2. I-install ang Apache 2.2 web server na may mga default na setting.
3.Gumawa ng walang laman na base ng impormasyon na may mga default na setting at buksan ito sa configurator mode.
4.Sa configurator, itakda ang "layunin ng paggamit" - mobile device. Maaari mo ring piliin ang mga opsyon ng isang personal na computer, o isang hybrid na opsyon na "mobile device + personal computer". Kung pipiliin natin ang hybrid na opsyon na "mobile device + personal computer," dapat nating makilala ang pagitan ng code na isasagawa sa PC at sa mobile device. Upang limitahan ang pagpapatupad ng code, ang preprocessor na mga direktiba na "#If MobileApplicationClient Then" at "#If ThinClient Then" ay ginagamit. Tinutukoy ng mga direktiba ng preprocessor ang konteksto ng 1C code. Dapat itong maunawaan na ang hanay ng mga bagay sa pagsasaayos na magagamit para sa paggamit ay makabuluhang limitado sa mobile platform kumpara sa nakatigil na platform. Halimbawa, sa mobile platform hindi namin magawang magtrabaho kasama ang mga plano para sa mga uri ng katangian, chart ng mga account, accounting register, pati na rin ang mga ulat (ang hindi available na mga sangay ng metadata ay naka-highlight sa gray).

5. I-update ang configuration at i-publish ito sa web server.


6. Pumunta kami sa browser sa http://127.0.0.1/MobPril/ at tingnan ang XML file (ibig sabihin, ang aming buong nai-publish na configuration ay naka-imbak sa web server bilang isang XML file).


7. I-install ang virtual machine na “VMware Workstation” (o anumang iba pa). I-deploy namin ang Android operating system sa isang virtual machine.

P.S. Mas mainam na gumamit ng isang tunay na device na nagpapatakbo ng Android sa halip na isang virtual machine, dahil ang isang tunay na device ay palaging gagana nang mas mabilis at mas matatag kaysa sa isang virtual machine.
8. I-install ang 1C mobile platform sa Android.

Upang mailipat ang mga file ng installer ng mobile platform sa Android, maginhawang gamitin ang Google Drive program (upang gawin ito, kailangan mong i-install ang Google Drive program sa Android (mula sa Playmarket) at ang Startup and Sync program sa iyong personal na computer ). Kung i-install namin ang platform sa isang virtual machine pagkatapos ay kailangan namin ang file " 1cem-x86.apk", kung i-install namin ang platform sa isang tunay na mobile device na tumatakbo sa Android, kailangan namin ang file " 1cem-arm.apk«.


9. Susunod, ikinonekta namin ang application na nai-publish sa web server sa aming mobile device.
Upang malaman ang IP address ng computer kung saan naka-install ang Apache web server, i-type lamang ang command sa command line ipconfig(o tingnan ang mga detalye ng koneksyon sa network). Kung nakatagpo ka ng error kapag kumokonekta, subukang huwag paganahin ang iyong antivirus at firewall.

Kung itatakda namin ang flag na "I-restart mula sa configurator" sa mobile application, sa tuwing ilulunsad ang mobile application, isang paghahanap ang gagawin para sa isang na-update na mobile application sa desktop computer kung may nakitang update, pagkatapos ay sa paglunsad ng mobile; maa-update ang application sa mobile device.



10. Isulat natin ang ating unang application na “Hello WORLD!!!”.

Upang gawin ito, sundin ang mga hakbang na ito:

10.1.Gumawa ng pangkalahatang hugis at ilagay ang palamuti dito.

10.2. Buksan ang lugar ng trabaho ng home page at idagdag doon ang pangkalahatang form na nilikha sa hakbang 10.1.

Magsasaad din kami ng isang column bilang template para sa unang page (1 column lang ang available sa mobile application).

10.3. Ilunsad natin ang aming mobile application at tingnan ang inskripsyon na "Hello WORLD!!!".


11. Kapag gumagawa ng mga form ng dokumento, mga direktoryo, atbp. dapat nating isaalang-alang ang laki ng screen ng mobile device at huwag mag-pile ng malaking bilang ng mga elemento sa form, kung hindi, mawawala tayo sa usability. Tanging ang mga elementong iyon na talagang gagamitin ng user ang dapat ilagay sa form. Upang makatipid ng espasyo sa mga tabular na bahagi ng mga dokumento, maaari mong gamitin ang mga pangkat ng mga column sa halip na mga column. Ang paggamit ng espasyo sa mga form ay dapat na ma-optimize.

Gumawa tayo ng mga reference na aklat na "Mga Item", "Mga Katangian ng Item", "Mga Counterparty" at isang dokumentong "Pagtanggap ng Mga Kalakal" at tingnan kung paano ipinapakita ang mga ito sa mobile platform.

Ang mga screenshot sa ibaba ay nagpapakita ng mga form ng listahan ng "Nomenclature" at "Counterparties" na mga direktoryo.


Form ng dokumento na "Pagtanggap ng mga kalakal":

Tulad ng nakikita mo mula sa screenshot, ang seksyon ng talahanayan ay gumagamit ng isang pangkat ng mga column upang i-optimize ang espasyo.

Form para sa pagpasok ng bagong linya sa tabular na seksyon ng mga produkto:

Form ng listahan ng mga dokumento na "Pagtanggap ng mga kalakal":

Kaya, mayroon kaming 2 configuration - ang configuration ng isang mobile device na may limitadong hanay ng mga bagay at ang configuration ng isang desktop computer na nagpapalitan.
Dapat itong maunawaan na ang bandwidth ng mobile Internet ay medyo mababa at ang paglilipat ng malaking halaga ng data sa pagitan ng isang mobile device at isang desktop computer ay tumatagal ng maraming oras.

Sa artikulong ito, gumamit kami ng platform ng developer at 2 configuration (isang configuration ng mobile device na may limitadong hanay ng mga object at configuration ng desktop computer). Ang diskarte na ito ay kailangan lamang kapag bumubuo ng isang application sa totoong pagsasanay, isasama namin ang .apk file ng mobile application at ia-upload ito sa Playmarket. Ida-download ng user ang apk file, i-install ito sa isang mobile device at gagamit ng ganap na autonomous na mobile application.

Available din sa mobile platform ang mga function ng pagtawag at pagpapadala ng mga SMS message, pag-scan ng mga barcode, pag-record ng audio at video, mga geopositioning function, pati na rin ang pagtatrabaho sa mga serbisyo sa web. Itutuloy…

Magandang hapon, mahal na mga mambabasa, dinadala namin sa iyong pansin ang isang maikling artikulo sa paglikha ng isang simpleng mobile application batay sa 1C: Enterprise mobile platform para sa Android nang hindi nagko-compile sa isang apk file.

Upang magsimula, maikling tukuyin natin ang mga pangunahing konsepto at software na kakailanganin natin para sa pagbuo.

1.Batayang konsepto

Platform ng mobile- isang tool na nagbibigay-daan sa iyong magpatupad ng mga application na gumagana sa mga mobile device na tumatakbo sa iOS, Android, at Windows Phone operating system.

Mobile app - ay ang huling resulta ng pag-unlad . Naka-install ito sa isang mobile device at may kakayahang makipagpalitan ng impormasyon sa pangunahing application sa Off-line mode. Ang mga sumusunod na channel ng paglilipat ng impormasyon ay magagamit para sa palitan: Pagpapalitan ng file, e-mail, mga serbisyo sa Web, atbp.

Ang configurator ay gumaganap bilang isang kapaligiran sa pag-unlad; ang tanging bagay na kailangang isaalang-alang ay hindi lahat ng mga bagay sa pagsasaayos at mga mekanismo ng system ay sinusuportahan ng mobile application.

2.Software setup

2.1 Pag-installWeb mga server

Una, mag-install tayo ng Web server. Posible ang trabaho sa pareho Internet impormasyon mga serbisyo mula sa Microsoft at kasama ng Apache. Sa ating halimbawa ay isasaalang-alang natin Apache dahil mas madaling i-set up at stable sa operasyon.

Gamit ang " Susunod » pumunta sa susunod na window:

Sa mga patlang "Domain ng Network" At "Pangalan ng server" magsulat" localhost" (o 127.0.0.1). Nangangahulugan ito na ang server ay tatakbo sa lokal na computer.

Sa field « Tagapangasiwas Email Address» Ipinapahiwatig namin ang mailing address, ang mga tugon ng server ay ipapadala dito.

Default Apache gumagana sa port 80. Maraming sikat na programa ang gumagana sa parehong port bilang default, halimbawa TeamViewer, Skype, na hindi magbibigay-daan sa iyong ilunsad sa hinaharap Apache. Mayroong 2 pagpipilian upang malutas ang problemang ito, huwag paganahin ang paggamit ng port na ito sa mga program na ito, o baguhin ang port Apache.

Upang malaman kung aling mga programa ang sumasakop sa port 80, kailangan mong patakbuhin ang cmd.exe (i-click ang Start - i-type ang cmd sa paghahanap - i-right-click ang "Run as administrator") sa window na lilitaw, ipasok ang command netstat -ab.

Sa screenshot nakita namin na ang port 80 ay inookupahan ng Skype.

Iwanan natin ang default na port 80. I-click ang " Susunod » pumili ng karaniwang pag-install. I-click ang " Susunod » , baguhin ang direktoryo ng pag-install kung kinakailangan, sa susunod na window i-click ang " I-install, pagkatapos nito ay magsisimula ang proseso ng pag-install.

Matapos makumpleto ang pag-install, lalabas ang isang icon sa system tray kung i-double click natin ito, magbubukas ang sumusunod na window:

Kung mayroon ka pa ring mga problema sa karaniwang port, maaari mo itong baguhin nang manu-mano anumang oras, upang gawin ito kailangan mong pumunta sa folder kung saan ito naka-install Apache, piliin ang folder " conf", buksan ang file sa loob nito " httpd.conf" Hanapin ang parameter sa loob nito "Makinig" at baguhin ang mga halaga nito sa port na kailangan mo, halimbawa 8080.

Pagkatapos baguhin ang numero ng port, i-save ang file at i-restart Apache. Upang gawin ito, mag-click sa icon sa tray

Gamit ang kaliwang pindutan ng mouse sa menu na lilitaw, piliin ang " I-restart».

Siguraduhin natin na gumagana ang Web server, pumunta sa browser at ipasok ang http://localhost:8080/ sa address input field (kung saan ang 8080 ay ang port na na-install namin), ang sumusunod na pahina ay dapat lumitaw sa screen:

2.2 Pag-setup ng platform

Para sa matagumpay na operasyon, dapat na mai-install ang mga sumusunod na bahagi:

2.3 Pag-install ng mobile platform

I-download ang mobile platform mula sa 1C website https://users.v8.1c.ru/. Sa aming halimbawa, ginagamit ang bersyon 8.3.8.70.

Ang na-download na platform ay isang archive na binubuo ng mga sumusunod na folder:

  1. Android- naglalaman ng mga file para sa pagpupulong para sa Android;
  2. iOS- naglalaman ng mga file para sa pagpupulong para sa iPhone;
  3. Windows- naglalaman ng mga file para sa pagpupulong para sa Windows Phone;
  4. MobileAppMaker- naglalaman ng mga file ng pagsasaayos ng "Tagabuo ng Application".

Dahil bubuo kami ng application para sa isang device na nagpapatakbo ng Android OS, interesado kami sa unang direktoryo.

Tingnan natin ang mga nilalaman nito:

  • Ang 1cem-arm.apk ay isang mobile development platform para sa ARM architecture, ang pinakakaraniwang ginagamit;
  • 1cem-x86.apk - mobile development platform para sa x86 architecture, na ginagamit para sa mga Intel processor;
  • prjandroid-arm.zip - isang mobile platform na idinisenyo para sa pagbuo ng mga mobile application (para sa ARM architecture);
  • Ang prjandroid-x86.zip ay isang mobile platform na idinisenyo para sa pagbuo ng mga mobile application (para sa x86 architecture).

I-install natin ang mobile platform sa device upang magawa ito, kopyahin ang file na "1cem-arm.apk" sa memorya ng telepono, o kung gumagamit ang iyong device ng Intel processor, "1cem-x86.apk".

Pumunta tayo sa file manager sa mobile device, hanapin ang aming file at patakbuhin ito

Sa panahon ng pag-install, maaari kang makatanggap ng mensahe tungkol sa pagharang sa mga application na hindi natanggap mula sa Play Store.

Sa kasong ito, kailangan mong i-click ang " Mga setting" at sa lalabas na window, lagyan ng tsek ang kahon " hindi kilalang mga mapagkukunan»

at ulitin ang pag-install.

2.4 Mga setting ng configuration

Matapos ma-configure ang lahat ng software, magsisimula kaming bumuo ng aming mobile application. Gumawa tayo ng bagong base ng impormasyon at pumunta dito sa configuration mode.
Pumunta sa menu Mga Tool -> Mga Opsyon at lagyan ng tsek ang mga kahon tulad ng ipinapakita sa screenshot:

Mayroon ka bang tanong o nangangailangan ng tulong mula sa isang consultant?

Susunod, tawagan ang mga katangian ng root configuration node at itakda ang parameter na "Use Purpose" bilang "Mobile Device", at alisin ang flag na "Personal Computer". Pagkatapos nito, magiging available ang mga object ng mobile application. Ang ilang mga bagay sa pagsasaayos ay magiging hindi magagamit.

2.5 Pag-publish ng configuration ng application

Ang susunod na hakbang ay ilipat ang configuration sa telepono. Upang gawin ito, una sa lahat, gagawa kami ng isang direktoryo; ang landas sa direktoryo na ito ay dapat na maikli, hindi naglalaman ng mga puwang at binubuo lamang ng mga Latin na character, halimbawa C:\MobileApp. Dagdag pa pumunta sa Configuration -> Mobile Application -> Publish . Sa lalabas na window, punan ang mga parameter:

  • Pangalan - Ang pangalan ng mobile application. Ang pangalan ay hindi dapat kapareho ng pangalan ng database publication para sa thin client.
  • I-update ang mobile application - kung pipiliin ang opsyong ito, sa tuwing maa-update ang configuration, awtomatikong ia-update ang configuration sa device
  • Direktoryo - landas sa folder kung saan iimbak ang mga file ng mobile application.

Siguraduhin nating gumagana ang lahat, pumunta sa browser sa http://localhost:8080/Mobapp/, dapat nating makita ang sumusunod na xml file:

Sa field ng address, ipasok ang IP ng computer kung saan nai-publish ang configuration at ang pangalan ng publikasyon mismo na pinaghihiwalay ng isang slash. Sa aming halimbawa, isang hindi karaniwang port ang ginagamit, kaya ang address ay magiging ganito:

I-click ang pindutan ng pag-download, pagkatapos ma-download ang sumusunod na window ng mga setting ay dapat lumitaw:

Itakda ang mga parameter:

  • « I-restart mula sa configurator" - Ang application ay awtomatikong ia-update kapag ang XML configuration file na matatagpuan sa web server ay na-update.
  • « Pinagana ang pag-debug» - ang hakbang-hakbang na pag-debug ng application sa isang mobile device ay posible mula sa Configurator sa computer ng developer. Pindutin ang pindutan " OK».

Kung pagkatapos ng pagpindot sa pindutan " I-download"Ang isang katulad na error ay magaganap:

Ngayon ang aming database ay naidagdag na sa mobile device, at maaari naming ilunsad ito, i-click ito sa listahan ng pagpili ng database. Walang laman ang lalabas na window dahil hindi pa kami nagdaragdag ng anumang mga metadata object. Simulan natin ang pag-unlad.

  1. Pagse-set up ng palitan sa pagitan ng Bangko Sentral at ng mobile application

Ipagpalagay natin na mayroon tayong tiyak na source database na naglalaman lamang ng isang direktoryo: "Nomenclature". At dapat itong makipagpalitan ng impormasyon sa aming mobile application.

Pumunta tayo sa configurator ng mobile application at lumikha ng hierarchical na direktoryo na tinatawag na "Nomenclature". Magdagdag tayo ng form ng listahan.

Pumunta tayo sa lugar ng trabaho ng home page at idagdag ang form ng listahan ng direktoryo na "Nomenclature", itakda ang parameter na "Start Page Template" bilang "One Column".

I-click ang pindutan " Update", ang application sa iyong telepono ay dapat awtomatikong mag-update. Kung hindi, pagkatapos ay magpakita ng isang pindutan sa panel at pindutin ito. Ang sumusunod na window ay dapat lumitaw sa screen:

Ang susunod na hakbang ay upang lumikha ng isang bagong seguridad ng impormasyon. Idaragdag namin ang direktoryo ng "Nomenclature" dito, ang istraktura nito ay ganap na uulitin ang direktoryo ng "Nomenclature" ng mobile application. Ang database na ito ay magsisilbing Source.

Gumawa tayo ng bagong serbisyo sa Web, tawagan itong "MobileExchange". Sa mga property, itakda ang URI ng namespace ng "MobileExchange". Sa serbisyong ito sa Web, magdaragdag kami ng bagong operasyon at tatawagin itong "I-download ang Mga Produkto"

Ngayon, magsulat tayo ng code na magbabalik ng listahan ng mga produkto mula sa source database sa anyo ng isang xml file. Pumunta tayo sa mga katangian ng pagpapatakbong "Mag-load ng Mga Produkto" at lumikha ng bagong function mula sa " Pangalan ng pamamaraan" Isusulat namin ang sumusunod na code sa function:

Mag-publish tayo ng isang serbisyo sa Web, para dito tayo pupunta Administrasyon ->I-publish sa Web -Server . Sa lalabas na window, itakda ang pangalan ng serbisyo sa Web na "MobileExchange" at alisan ng tsek ang checkbox na "I-publish ang thin client at Web client". Pagkatapos nito, pindutin ang pindutan " I-publish».

Pagkatapos mai-publish ang serbisyo sa Web, pumunta tayo sa pagsasaayos ng mobile platform, buksan ang form ng listahan ng direktoryo ng "Nomenclature" at magdagdag ng bagong command na "I-update ang nomenclature" sa command panel ng form. Bago gawin ito, inirerekumenda na alisin ang tsek " Autocomplete"sa panel na ito.

Gumawa ng bagong aksyon para sa command na "I-update ang Item" at isulat ang sumusunod na code:

Ina-update namin ang configuration.

Kinukumpleto nito ang pag-unlad. Pumunta kami sa mode ng pagsasaayos ng gumagamit ng Pinagmulan at punan ang direktoryo ng nomenclature sa isang arbitrary na paraan

Pumunta sa iyong mobile device, ilunsad ang application, at i-click ang button na "I-update ang Listahan ng Produkto". Kung ang lahat ay tapos na nang tama, ang sumusunod na data ay dapat na lumitaw sa screen:

Konklusyon

Ibuod natin ang ating gawain - nagawa nating i-configure at bumuo ng isang mobile application mula sa simula at i-set up ang palitan nito sa isa pang database. Kapansin-pansin na pinapayagan ka ng 1C Mobile platform na gawin ito nang mabilis at maginhawa.

Palaging nauugnay ang pagbuo ng mobile application sa pangangailangang matuto ng mga karagdagang teknolohiya. Paano kung muling isaalang-alang natin ang tanong at gumamit ng pamilyar na mga tool?

Sa unang pagkakataon, sinubukan ng kumpanya ng 1C na pumasok merkado ng pagpapaunlad ng mobile noong 2006 taon. Sa oras na iyon, talagang nagmamadaling i-automate ang trabaho ng mga malalayong empleyado gamit ang mga PDA. Ang mga bagong programa para sa paglutas ng mga naturang problema ay lumitaw tulad ng mga kabute, at ang isang vendor tulad ng 1C na may matagumpay na mga produkto para sa pag-automate ng iba't ibang mga lugar ng negosyo ay hindi maaaring palampasin ang pagkakataong makapasok sa isang kumikitang merkado.

Sa kalagitnaan ng 2006, ipinakita ng kumpanya ang pagpapalabas ng isang bagong produkto na may promising na pangalan na "1C: Enterprise 8. Extension para sa mga handheld computer." Ang mga developer ng 1C, na nakakita ng mga prospect ng ika-8 na platform, ay nagsimulang umasa na ngayon, gamit ang isang tool, naging posible nang walang labis na kahirapan na bumuo para sa mobile operating system na "Windows Mobile", na sikat sa mga taong iyon.

Sa pagsasagawa, ang lahat ay mukhang mas masahol pa. Hindi kami pinahintulutan ng tool na ito na ipatupad ang mga orihinal na ideya. Plastik na bag " Extension para sa mga handheld na computer» ay higit pa sa isang add-on para sa ilang tipikal na configuration kaysa sa isang ganap na solusyon sa pag-develop. Walang probisyon upang palawakin ang functionality ng configuration sa pamamagitan ng pagdaragdag ng mga bagong metadata object. Napakasimpleng bagay na iniwan sa mga third-party na programmer: paglikha ng mga bagong form para sa pakikipag-ugnayan ng user, pagproseso ng mga event ng user.

Oo, mayroong lahat ng uri ng mga workaround para sa mga paghihigpit, ngunit kahit na hindi nila pinapayagan ang tunay na pag-unlad. Bilang karagdagan sa mga teknikal na limitasyon, nadama ng mga mamimili ang isang seryosong hadlang sa pananalapi. Ang mga kumpanyang nagpasya na ipatupad ang solusyon mula sa 1C ay kinakailangang bumili ng mga produktibong PDA, bumili ng mga lisensya para sa Windows Mobile, at magbayad din ng 1C para sa paghahatid ng solusyon at ang panghuling aplikasyon.

Ang solusyon mula sa 1C ay masyadong mahal. Ang mga kumpanyang nakasanayan sa pag-iipon ng pera ay patuloy na gumagamit ng mga alternatibong solusyon. Bukod dito, ang mga developer ng mga alternatibo ay pinamamahalaang upang magbigay ng kasangkapan sa kanilang mga produkto para sa pakikipag-ugnayan sa mga karaniwang solusyon sa 1C.

Hindi pinahintulutan ng mga teknikal na limitasyon at mataas na gastos ang produkto na ulitin ang napakalaking tagumpay ng desktop platform. Ang ideya na lupigin ang mobile market ng gusali.

nabigo nang husto ang mga aplikasyon.

Hakbang pasulong

Ang pagkawala at pagkalugi mula sa isang hindi matagumpay na proyekto ay hindi nagtapos sa pagbuo ng isang promising direksyon. Noong 2013, ipinakilala ng kumpanya ng 1C ang unang matatag na bersyon ng bagong platform 8.3, na may function ng pagbuo ng mga mobile application.

Ganap na inisip muli ng 1C ang diskarte nito sa paglutas ng "theorem" ng mobile at isinasaalang-alang ang mga pagkakamali ng nakaraang hindi matagumpay na produkto. Ang resulta ay isang ganap na bagong tool na walang pagkakatulad sa hinalinhan nito at nakatutok sa pinakabagong mga mobile platform - Android at iOS.

Mga mobile application sa istilong 1C

Upang lubos na makilala ang mga kakayahan sa pag-develop para sa mga mobile platform, susubukan naming bumuo ng isang maliit na configuration. Gamit ang isang end-to-end na halimbawa, mas masusuri mo ang magagamit na functionality at magpasya sa posibilidad ng paggamit ng 1C platform upang malutas ang mga problema.

Upang gumana, kakailanganin mo ang pinakabagong release ng 1C:Enterprise 8.3 platform. Ang pang-edukasyon na bersyon ng pamamahagi ay makukuha sa opisyal na website ng 1C. Mayroong higit sa sapat upang muling likhain ang isang halimbawa ng mga kakayahan nito.

Bilang karagdagan sa 1C:Enterprise 8.3 platform, kakailanganin namin ng ilang karagdagang tool. Ang artikulong ito ay titingnan ang isang halimbawa ng pagbuo ng isang Android application. Kaugnay nito, kakailanganin mong i-download ang: Android SDK at Apache WEB server. Ang unang bahagi ay naglalaman ng lahat ng kailangan upang bumuo ng application at isang emulator para sa pagsubok, at ang WEB server ay kapaki-pakinabang para sa mabilis na pag-download ng application sa mobile OS.

Kakailanganin din namin ang paghahatid ng "Mobile Developer Platform". Naglalaman ito ng configuration upang pasimplehin ang proseso ng pagbuo ng nilikhang mobile application, pati na rin ang isang mobile developer platform. Dapat itong mai-install sa isang mobile device o emulator.

Upang bumuo ng isang application na handa para sa pamamahagi sa pamamagitan ng Google Play, kakailanganin mong mag-download Apacheant At JavaJDK. Ang paksang ito ay lampas sa saklaw ng artikulong ito, kaya maaari mong malaman ang higit pa tungkol sa pagtatrabaho sa mga tool na ito at pag-assemble ng application sa kaukulang seksyon ng aking .

Mga tool sa pag-configure

Platform " 1C:Enterprise 8.3" at ang Apache web server ay binibigyan ng mga installer at naka-install sa karaniwang paraan. Android SDK kailangan mo lang i-unzip ito sa isang hiwalay na direktoryo at patakbuhin ang " sdk manager.exe" Ang isang window ay lilitaw sa harap mo na may isang seleksyon ng mga magagamit na pakete para sa pag-install. Upang subukan ang halimbawang tinalakay sa artikulong ito, kakailanganin mong piliin at i-install: Mga Tool sa Android SDK, A Mga tool sa platform ng android, SDK Platform API 17.

Ang huling hakbang ay ang paglikha ng bagong base ng impormasyon. Para sa mga hindi kasali sa pag-unlad sa ilalim ng " 1C: Enterprise"Ipapaliwanag ko na ang anumang solusyon para sa platform na ito ay binubuo ng isang base ng impormasyon at pagsasaayos. Ang pagdaragdag ng bagong database ay ginagawa sa pamamagitan ng pag-click sa " Idagdag»start window. Pagkatapos idagdag ang database, buksan ito sa " Configurator».

Unang mobile configuration

Sa pangunahing menu ng configurator makikita natin ang seksyon na " Configuration" at piliin ang "Buksan ang configuration". Ang puno ng pagsasaayos (ang mga bagay na bubuo sa hinaharap na aplikasyon) ay ipapakita sa kaliwang bahagi ng window. Piliin ang configuration root dito at pindutin ang key combination " Alt+Enter" Magbubukas ang editor ng mga katangian sa kanang bahagi ng window ng configurator.

Tawagan natin ang configuration " GAGAWIN" at sa property na "Layunin ng paggamit" ipinapahiwatig namin ang " Mobile device" Pakitandaan na pagkatapos isagawa ang huling pagkilos, ang ilang node ng configuration tree ay magiging hindi aktibo. Sa kasamaang palad, hindi posibleng gamitin ang lahat ng metadata object sa mobile platform.

Upang malutas ang aming problema, kakailanganin naming lumikha ng ilang mga metadata object sa puno ng pagsasaayos:


Pamamaraan AddTask(Task) ExportRecordManager = CreateRecordManager(); RecordManager.Period = CurrentDate(); RecordManager.Task = Gawain; RecordManager.Status = Task.Status; RecordManager.Record(); EndProcedure

Listahan 2. Code ng function na "Kumuha ng Listahan ng mga Unclosed Tasks()"

Function GetList ng UnClosedTasks() Export Request = Bagong Kahilingan; Query.Text = "PUMILI |TaskStatusSliceLast.Task AS Task, |TaskStatusSliceLast.Task.ExecutionDate AS ExecutionDate |FROM | Information Register.TaskStatus.SliceLast(&CurrentDate, Status<>VALUE(Enumeration.TaskStatuses.Completed)) AS StateTasksSliceLast | |ORDER NI | Petsa ng Pagpapatupad DESC"; Request.SetParameter("CurrentDate", CurrentDate()); Return Request.Execute().Unload(); EndFunction

Inayos namin ang pagkuha ng data mula sa rehistro ng impormasyon at pagtatala nito, ngayon ay turuan natin ang aming direktoryo kung paano magtrabaho kasama ang rehistro. Upang gawin ito, magdagdag ng isang karaniwang module sa puno ng pagsasaayos na may pangalang " Paggawa sa mga Gawain" Magagawa mo nang wala ito, ngunit nais kong agad na tumuon sa posibilidad na hatiin ang code sa mga module. Maraming mga developer ng 1C ang nagpapabaya sa rekomendasyong ito at inilalarawan ang lahat ng lohika sa isang lugar, at sa gayon ay nagiging kumplikado ang kasunod na pagpapanatili ng code. Gumawa tayo ng bagong pamamaraan sa modyul " Lumikha ng NewTask"(tingnan ang Listahan 3).

Listahan 3. Code para sa "Gumawa ng BagongTask" na pamamaraan

Pamamaraan CreateNewTask(Link) Export If Link.ThisGroup Then Return; tapusin kung;<>Kahilingan = Bagong Kahilingan; Query.Text = "SELECT |TaskStatusSliceLast.Status |FROM |Information Register.TaskStatus.SliceLast(&CurrentDate, Task = &Task) BILANG TaskStatusSliceLast"; Query.SetParameter("CurrentDate", CurrentDate()); Request.SetParameter("Task", Link); Resulta = Query.Run().Select(); Kung Result.Next() Then If Result.Status

Link.Status Then Information Registers.Task Status.AddTask(Link); tapusin kung;

Kung hindi, Nagrerehistro ang Impormasyon.TaskStatus.AddTask(Link); tapusin kung; EndProcedure Bago lumikha ng isang bagong tala, isang pagsusuri ay ginawa para sa pagkakaroon ng mga umiiral na mga tala para sa gawain. Kung mayroon nang talaan, kailangan mong ihambing ang mga katayuan ng gawain. Kung ang katayuan mula sa rehistro ay hindi naiiba sa katayuan ng elementong isinusulat, hindi na kailangang gumawa ng karagdagang entry. Bilang isang pagtatapos, buksan natin ang anyo ng item sa direktoryo na "Mga Gawain" at lumikha ng isang tagapangasiwa ng kaganapan "

AfterRecordingOnServer

" Sa loob nito magsusulat kami ng isang tawag sa pamamaraang inilarawan sa ikatlong listahan:

WorkWithTasks.CreateNewTask(CurrentObject.Link);

Nagtatrabaho kami sa interface Ang pangunahing pag-andar ng application ay handa na - ang gumagamit ay maaaring lumikha ng mga gawain, at ang bawat bagong gawain ay lumilikha ng isang entry sa pana-panahong rehistro ng impormasyon. Ngayon ay lumipat tayo sa interface. Unahin natin ang gawaing may mga gawain. Tiyak na magiging lohikal na agad na magpakita ng isang listahan ng mga hindi nakasara na gawain at ang kakayahang lumikha ng bago kaagad pagkatapos ilunsad ang application? hanapin natin ang node" Mga pangkalahatang anyo" Buksan natin ang nilikhang form sa taga-disenyo ng interface at magdagdag ng katangian tulad ng " Talaan ng mga Halaga" Tawagin natin itong “OpenZachi”. Maglalaman ang talahanayan ng dalawang hanay - " Gawain"(Reference Link.Tasks) at " Petsa ng Pagpapatupad" (Petsa ng).

Ang susunod na hakbang ay i-drag ang mga idinagdag na props papunta sa form. Dapat tayong magkaroon ng isang interface para sa isang simpleng talahanayan. Hindi namin tutukuyin ang anumang mga sukat;

Para sa ginawang talahanayan, sa Property Inspector, itakda ang checkbox para sa property " Tingnan lamang", at ang ari-arian " Posisyon ng Command Panel» itakda ang halaga sa “Hindi”. Pupunuin namin ang talahanayan ng dynamic na impormasyon, kaya walang saysay na i-edit ito sa bahagi ng user.

Ngayon, ilarawan natin ang "When CreatedOnServer" event handler para sa form. Magdagdag tayo ng isang linya ng code dito:

OpenTasks.Load(InformationRegisters.TaskStatus.GetListofUnClosedTasks());

Sa code, tinutukoy namin ang pamamaraan na inilarawan namin " Kunin ang Listahan ng mga Unclosed Tasks” at ang resulta ng pagpapatupad nito ay inilagay sa talahanayan.

Bumalik tayo sa taga-disenyo ng form at magdagdag ng isang pangkat ng uri na "Regular na pangkat na walang display" na may dalawang mga pindutan: " Lumikha"At" Update" ari-arian" Pagpapangkat"Para sa idinagdag na pangkat, itakda ang halaga sa" Pahalang. Upang gawing mas malinaw ang mga button, magdagdag ng mga larawan at baguhin ang default na font.

Piliin ngayon ang pindutan " Lumikha"at bigyan ito ng pandaigdigang utos" Mga Gawain: lumikha" Papayagan ka nitong lumikha ng mga gawain nang hindi pumapasok sa mismong direktoryo. Sa pamamagitan ng pag-click sa pangalawang pindutan, ia-update namin ang mga nilalaman ng talahanayan na may mga gawain. Upang gawin ito, kakailanganin mong lumikha ng karagdagang utos ng form.

Lahat ng bagong form na command ay nilikha sa tab na may parehong pangalan " Mga koponan" Ang prinsipyo ay simple - nagdaragdag kami ng isang bagong command, ilarawan ang code ng aksyon sa loob nito at pagkatapos ay iugnay ang command sa interface, sa aming kaso sa pindutan.

Hindi rin natin dapat kalimutan na gumagawa tayo ng pinamamahalaang application, kaya kailangan nating malinaw na makilala ang pagitan ng client at server code. Kapag na-click ang pindutan magkakaroon ng konteksto " OnClient", at makakatanggap kami ng data mula sa database mula sa server. Sa code ay ganito ang hitsura:

&Sa Pamamaraan ng Kliyente UpdateTaskList(Command) UpdateList(); Katapusan ng Pamamaraan &Sa Pamamaraan ng Server Kapag Nilikha sa Server (Failure, Standard Processing) OpenTasks.Load(InformationRegisters.TaskStatus.GetListofUnClosedTasks()); EndProcedure

Ngayon, tukuyin natin ang aming desktop form bilang lugar ng home page. Buksan ang mga katangian ng pagsasaayos (piliin ang pinakamataas na node at i-click ang " Alt+Enter") at para sa pag-aari na "Working area ng home page" itakda ang halaga " Isang column", pagkatapos ay idagdag ang aming form sa listahan " Mga pangkalahatang anyo».

Ang application ay ganap na handa at oras na upang subukan ito sa aksyon. Subukang patakbuhin ang halimbawa at lumikha ng ilang mga gawain na may katayuan maliban sa " Nakumpleto" Ang rehistro ng impormasyon ay napunan ng mga bagong entry (maaari itong matingnan sa pamamagitan ng item sa menu " Lahat ng function") at ang ilan sa mga ito ay ipinapakita sa desktop.

Landing sa Android

Ang configuration ay mahusay na gumagana sa desktop, at ngayon ang oras upang subukan ito sa isang mobile OS emulator. Upang maghanda ng bagong emulator, patakbuhin ang command interpreter ( cmd.exe) at pumunta sa direktoryo ng "toos" ng pamamahagi ng Android SDK. Patakbuhin ang utos" android.bat avd", na maglulunsad ng virtual na Android device manager. Sa loob nito, i-click ang pindutang "Lumikha" at sa window na lilitaw, tukuyin ang mga parameter ng virtual device. Sa aking kapaligiran sa trabaho, nagpasya akong tularan Nexus S sa Android bersyon 4.2.2. (Antas 17 ng API).

Pagkatapos likhain ang device, agad naming ilulunsad ito. Habang naglo-load ang Android, bumalik tayo sa configurator at i-publish ang ating application sa web server. Sa pangunahing menu ng configurator, piliin ang item na " Configuration» -> « Mobile app» -> « I-publish" Sa window ng mga setting ng pag-publish, tinukoy namin ang pangalan ng application (maaaring maging anuman), ang web server (sa aming kapaligiran ay dapat mayroong isa) at ang direktoryo para sa pag-iimbak ng mga setting.

Tinutukoy bilang pangalan " todo-mobile", ang application ay magiging available sa address - " http://host/todo-mobile" I-click ang “ok” at subukang i-access ang nai-publish na application gamit ang isang browser. Kung matagumpay, ibabalik ng server ang XML code ng ginawang configuration.

Bumalik kami sa emulator at ni-load ang application gamit ang mobile developer platform dito. Ang application file mismo ay magagamit kasama ng paghahatid ng mobile developer platform at tinatawag na "1cem-arm.apk". Upang mai-install ang application na ito sa emulator, gagamitin namin ang utility na " adb.exe"mula sa direktoryo" platform-tools»: adb.exe install –r 1cem-arm.apk.

Pagkatapos ng matagumpay na pag-install, buksan ang listahan ng mga application sa emulator at ilunsad ang mobile developer platform. Sa window na bubukas, i-click ang " Magdagdag ng application" at sa field na "address" ipinapahiwatig namin ang URL sa aming web server. meron ako nito http://192.0.168.106/todo-mobile. I-click ang " Idagdag"at matagumpay na nailipat ang aming configuration sa mobile platform. Handa nang gamitin ang application. Subukan ang resulta at bumalik sa configurator, oras na para bigyan ang mga application ng "mobile functionality".

Nagpapadala ng mga mensaheng SMS/MMS

Mga function para sa pagtatrabaho sa SMS/MMS iba ang suporta ng pagmemensahe ng mga mobile platform. Halimbawa, kapag nagpapatakbo ng isang application sa Android, ang developer ay may pagkakataon na mag-subscribe sa SMS at makakuha ng access sa mga bagong mensahe kaagad pagkatapos matanggap ang mga ito. Sa kasamaang palad, ang parehong tampok na ito ay hindi magagamit sa iOS, kaya ang dokumentasyon ay dapat na nasa kamay sa panahon ng pagbuo.

Ang isang bagay ay ibinigay para sa pagpapadala ng mga mensaheng SMS SMSMessage. Tingnan natin ang isang halimbawa:

&OnClient Procedure SendSMSMessage(Recipient, MessageText) NewMessage = New SMSMessage(); NewMessage.Text = MessageText; NewMessage.Recipients.Add(Recipient); Telephony Tools.SendSMS(NewMessage); EndProcedure

Ang code ay medyo simple at halos hindi nangangailangan ng mga komento. Ngayon tingnan natin ang pag-subscribe sa mga papasok na mensahe:

&Sa Pamamaraan ng Kliyente ConnectMessageReceivingHandler() SubscribeToMessages = New AlertDescription("ProcessingNewMessages", ThisObject); Telephony Tools.ConnectSMSMessageHandler(SubscribeToMessages); Pagtatapos ng Pamamaraan &Sa Pamamaraan ng Kliyente Pagproseso ng Mga Bagong Mensahe (Mensahe, Mga Karagdagang Parameter) // Pagproseso ng bagong mensahe // Mensahe, Mensahe. EndProcedure

Pamamaraan" Pagproseso ng Mga Bagong Mensahe" ay tatawagan sa tuwing may natanggap na bagong SMS. Sa pamamagitan ng parameter " Mensahe"isang bagay ng uri" ay ipinadala SMSMessage» at madali naming makukuha ang teksto ng mensahe at impormasyon tungkol sa nagpadala.

Ang paggawa sa mga mensahe ng MMS ay ginagawa sa parehong paraan. Una, lumikha kami ng isang mensaheng SMS, at pagkatapos ay nagdaragdag kami ng isang attachment (halimbawa, mga larawan) dito. Sa simpleng pagkilos na ito, ang isang SMS ay nagiging MMS:

NewMessage= Bagong SMSMessage(); Attachment = Bagong MMSAttachment; Attachment.Data = Larawan; Attachment.ContentType = "image/jpeg"; MMSMessage.Attachments.Add(Attachment);

Paggawa ng mga tawag mula sa isang mobile application

Ang isang programmatic na tawag ay ginawa gamit ang "Dial Number" na paraan ng pandaigdigang bagay na "Telephony Tools". Bago tawagan ang pamamaraan, lubos na ipinapayong suriin ang posibilidad ng pagtawag:

Kung Telephony Tools.SupportedDialing() Then Telephony Tools.DialNumber(PhoneNumber, CallAgad); tapusin kung;

Parameter " Tumawag kaagad» nakakaapekto sa pagganap ng pagdayal. Kapag ito ay katumbas ng " totoo", awtomatikong ginagawa ang pagdayal sa pamamagitan ng karaniwang application ng pagtawag. Kung nakatakda sa False, makikita rin ng user ang karaniwang interface ng dialer, ngunit kakailanganing pindutin ang button para tumawag. Tumawag».

Log ng tawag

Pinapayagan ng mobile platform ang developer na makipag-ugnayan sa log ng tawag. Halimbawa, madali kang makakakuha ng listahan ng mga papalabas, hindi nasagot o papasok na tawag. Ang tampok na ito ay sinusuportahan lamang sa Android:

Log ng Tawag = Telephony Tools.GetCall Log(); Selection = NewDataCompositionSelection; Selection Element = Selection.Elements.Add(Type("DataCompositionSelection Element")); SelectionElement.LeftValue = NewDataCompositionField("CallType"); SelectionElement.ComparisonView = ComparisonTypeDataLayout.Equals; SelectionElement.RightValue = CallLogCallType.Missed; SelectionElement.Use = True; Listahan ng mga CallLog Entry = CallLog.FindRecords(Selection); //Ang Listahan ng Mga Call Log Entries ay maglalaman ng isang koleksyon ng mga entry

Geopositioning

Halos anumang modernong smartphone ay may mga function ng geolocation. Magagamit mo ang functionality na ito mula sa built-in na 1C na wika. Ang pagkuha ng kasalukuyang mga coordinate ng device ay maaaring nahahati sa 2 yugto: pagpili ng isang geopositioning provider at pagproseso ng mga natanggap na coordinate:

//Let's give the choice of provider to the platform IdealProvider = Geopositioning Tools.GetMost AccurateProvider(); Coordinates = GeoPositioningTools.GetLastLocation(IdealProvider); //Kung matagal nang natanggap ang mga coordinate, i-update ang If Coordinates = Undefined OR CurrentDate() – Coordinates.Date > 3600 Then Geopositioning Tools.UpdateLocation(IdealProvider, 60); Coordinates = GeoPositioningTools.GetLastLocation(IdealProvider); tapusin kung;

Paggawa gamit ang mga tampok na multimedia

May pagkakataon ang developer na kumuha ng mga larawan, video, at audio recording gamit ang built-in na wika: Kumuha ng litrato(), Gumawa ng video recording(), Gumawa ng audio recording().

Aling mobile OS ang mas mahusay na i-develop sa 1C?

Sa kabila ng pagmamahal ko sa teknolohiya ng Apple, pinakamahusay na lumikha ng mga mobile application gamit ang 1C platform para sa Android. Mayroong ilang mga dahilan para dito, ngunit ang pinakamahalaga ay ang mga sinusuportahang function. Sa kasamaang palad, maraming mga kinakailangang bagay ang hindi suportado sa ilalim ng iOS. Halimbawa, ang kawalan ng kakayahang mag-subscribe sa mga SMS na mensahe sa pamamagitan ng program o makipag-ugnayan sa mga log ng tawag ay maaaring maging imposibleng ipatupad ang ilang ideya. Ang Android ay mas palakaibigan sa bagay na ito. Huwag kalimutan ang tungkol sa halaga ng mga device mismo. Hindi lahat ng kumpanya ay handang magmayabang sa pagbili ng mga mobile device mula sa Apple.

Sa halip na makumpleto

Platform " 1C: Enterprise 8» ay napatunayan sa pagsasanay ang kahandaan nitong maging isang simpleng tool para sa pagbuo ng corporate development. Mga aplikasyon para sa mga mobile platform. Ang mga halimbawang tinalakay sa artikulo ay karagdagang kumpirmasyon nito. Hindi naman kinakailangan na gumastos ng mga mapagkukunan sa pag-aaral ng mga katutubong tool kung ang pag-andar ng application ay umaangkop sa mga kakayahan ng mobile platform at ang kumpanya ay pinangungunahan ng mga produkto ng 1C.