Instalirajte aplikacije za loše 2.0. Korak po korak opis stvaranja jednostavne aplikacije za Samsung Bada. Zapravo stvaranje aplikacije
Već postoje sasvim detaljni članci na Habréu, koji su posvećeni Badi, na primjer, ovo i to, ali ne postoji korak-po-korak opis stvaranja aplikacije za početnike. Tko je zainteresiran - pitam za mačku.
Tema za pisanje nastalo slučajno - prijatelj se aktivno bavio uspostavom granica zemljišta pomoću GPS-a u geodetskoj tvrtki; Specifičnosti rada (odakle je došlo do - dobro pitanje) je da su dobivene geodetne koordinate (dopustite mi da objasni što se znači s obzirom na širinu i dužinu) mora se prevesti u pravokutno pravo nakon primitka. Na Društvu prijenosnih računala koji su sposobni izdržati 8-satni radni dan br Vaš telefon, onda nema aplikacije koja može riješiti opisano isključivo inženjerski zadatak? Takva prijava, naravno, nije pronađena, a ja sam dobio neku vrstu ponude za pisanje za dobro poznatu naknadu.
Alati
Bada SDK 1.2.0 se koristi za razvoj aplikacija za Bada, preuzimanje koje možete registriranjem na web-lokaciji za bade programere. U tom procesu ne postoji ništa komplicirano, ali u fazi odabira datoteka za preuzimanje, iskreno kažem, "dotaknut", preuzimanjem samo SDK-a, a tzv. Jezični paket (Jezični paket) nije, čitati to, kao što je napisano Na web-lokaciji, njegovo preuzimanje će se dogoditi nakon instalacije SDK-a. Međutim, u pozornici ugradnje, nešto je pošlo po zlu, instalacija se nastavila bez učitavanja lingvističkog paketa, što je kasnije dovelo do nemogućnosti izgradnje (graditi) ili, još više, pokrenuti zahtjev.Nakon preuzimanja SDK-a i jezičnog paketa, trebali bi biti stavljeni na jedno mjesto, a prilikom instaliranja SDK-a ili kada se mijenja, instalacijski program će pokupiti jezični paket i instalirati ga samostalno.
Zapravo stvaranje aplikacije
Razvojno okruženje temelji se na pomrazi koju koristi programski jezik C ++. Počnimo s činjenicom da nastavimo stvaranje nove aplikacije s očiglednom naredbenom datotekom -\u003e Novi -\u003e Projekt aplikacije Bada. U prozoru koji se pojavljuje, trebali biste definirati ime projekta u polje Naziv projekta, na popisu tipa projekta, odaberite vrstu aplikacije - aplikacija temeljena na bazi obrasca.
Zatim će se okolina zatražiti kako bi se odredili tehnički parametri uređaja za koje će se projektirati aplikacija (razlučivost zaslona, \u200b\u200bprisutnost GPS-a, itd.). Ovi parametri su definirani u posebnom manifestu. GML manifest datoteku, koji se može odabrati iz SDK datoteka, stvoriti i preuzeti s web-lokacije developera Bada ili stvoriti vlastite. Bez kajče, koristio sam manifestnu datoteku iz mapa s primjerima uzoraka, koji su instalirani s SDK-om, budući da moj zahtjev nije zahtijevao prisutnost "zvona, a samo je razlučivost zaslona bila važna.
Tada će se okolina tražiti da odredi korijenski direktorij SDK-a, ne bi trebalo biti problema s tim problemima. Nakon odabira popisa, model uređaja i njegov API će se pojaviti, koji će se kasnije koristiti za programiranje.
Sljedeći korak je odrediti zadani naziv obrasca, koji će se pojaviti odmah nakon početka aplikacije. Ovo ime će biti generirano * .h i * .cpp datoteke.
Zatim će biti potrebno odrediti da dodate ili nema podrške za automatsko skaliranje i najbolju razlučivost zaslona ako se doda ova značajka. Razumijem da je bolje to učiniti, jer će aplikacija moći raditi na različitim uređajima s različitim razlučivosti i ne mora ga ponoviti.
Sljedeća veza u lancu dugih postavki je definicija ID-a aplikacije, kako bi se potvrdila funkcije aplikacije ako je potrebno čitati i pisati kako bi osigurali mape. Nisam to trebala, pa sam spustio ovaj korak.
Gotovo kraj je definiranje očiglednih svojstava imena, dobavljača i opisa aplikacije.
I gotovo gotovo kraj je odrediti potrebne konfiguracije za razvoj: preporučujem da sve ostavite prema zadanim postavkama, a sada je najvažnija konfiguracija simulator-debug - to je sposobnost za ispravljanje pogrešaka na simulatoru uređaja, ciljno-otpuštanje - konfiguracija za prikupljanje zahtjeva prije istovara na pravi uređaj.
Posljednji korak je informacija smanjena na svim postavkama u prozoru Sažetak (Sažetak), koji se može ponovno pročitati i osigurati da je sve ispravno odabrano.
Nakon finala postavki, buduća aplikacija pojavljuje se u projektu Explorer, klikom na koji resursi datoteke otkrivaju u prozoru resursa i izgled sljedećeg prozora:
Nakon što kliknete na obrazac (i općenito, na bilo kojoj kontrolnoj stavci) na kartici Svojstva možete promijeniti očita svojstva aplikacije, kao što je tekst u zaglavlju, boja pozadine, prisutnost i naziv Soft tipke.
Odmah sam prenio gotov gumb koji je ljubazno stvorio okoliš, dolje i napisao izračunati na njemu. Imati GUI urednika da biste dobili sljedeće sučelje koje je dobro pogodno za moj zadatak (vjerujem da proces prijenosa kontrola na obrazac i instaliranje njihovih svojstava ne uzrokuje nikakve poteškoće); Kao potpisi, očigledna oznaka se koristi za unos ulaznih polja, kao Editfield ulaznih polja; Oznaka se također koristi za prikaz rezultata izračuna, jer njihovo uređivanje nije osigurano:
Sada zapravo kodiraju.
Izvršna aplikacija prolazi nekoliko stupnjeva (pomoć je vrlo detaljna, možete naučiti stavke tamo), sada prije svega što smo zainteresirani za inicijalizaciju aplikacije za koju se može naći obrazac Oninitialing (Void) u datoteci<ВАША_ФОРМА>.Cpp u mapi SRC projekta.
Prema zadanim postavkama, ova metoda je sljedeća:
Rezultat Form1 :: omanirializacija (praznina) (rezultati R \u003d E_SUCCESS; // TODO: Dodajte svoj inicijalizacijski kod ovdje // Get gumb putem resursa ID __pbuttonok \u003d Static_cast
Učinio sam to ovako:
Zaštićena: Statički konstantni ID_Button_ok \u003d 101; // novi ID akcije za ključnu statičku strukturu ID_Button_Clear \u003d 102; // geodetski konstantan statički konstitution int a \u003d 6378137; Statički const float alfa \u003d 1/2 298,2572223563; OSP :: UI :: Kontrole :: Gumb * __ PUTTONOK; // novo polje: gumb OSP :: UI :: kontrola :: gumb * __ pbuttonclear; // nova polja: uređivanja i oznake OSP :: UI :: Kontrole :: Editfield * __ PB_DEG; OSP :: UI :: Kontrole :: Editfield * __ PB_MIN; OSP :: UI :: Kontrole :: Editfield * __ PB_SEC; OSP :: Ui :: Kontrole :: Editfield * __ pl_deg; OSP :: Ui :: Kontrole :: Editfield * __ pl_min; OSP :: Ui :: Kontrole :: Editfield * __ pl_sec; OSP :: Ui :: Kontrole :: Editfield * __ pH; OSP :: UI :: Kontrole :: naljepnica * __ px; OSP :: UI :: Kontrole :: naljepnica * __ py;
Sada u metodi oninitializing (praznina), možete stvoriti jasan gumb i dodijeliti ID akciju i slušatelja slušatelja. Isto tako, nastavit ćemo s Editfieldom i s oznakom bez dodavanja na njih, međutim, id akcija i slušatelja događaja jer njihov odgovor na korisničke akcije u našoj jednostavnoj aplikaciji nije osiguran (idc_button1, idc_editfield1, itd. - vrijednosti Ime imovine za gumb).
Puttonok \u003d statički_cast.
U ovoj fazi možete započeti aplikaciju i vidjeti kako se podaci unose u simulator, ali prednosti ne obrađuju događaje za tisak, naravno ne.
Da biste riješili ovaj zadatak, koristi se inakcija klasa obrasca klase (Const OSP :: UI :: kontrola i izvor, int action). Kao što se može vidjeti, drugi parametar je već spomenut iznad ID akcije. Prilikom izvršavanja aplikacije "Slušajte" Događaji pritiska gumba i ID akcije koji su im dodijeljeni se prenose na ONactionPerformiran (Const OSP :: UI :: Kontrola i izvor, INT Action). Ako je obrada predviđena za takav identifikator, izvodi se.
U onemogućavanju postoji prekidač za analizu actions parametra, to je prikladno koristiti ga. Dalje, dopustit ću sebi da donesem kodeks ove metode s detaljnim komentarima:
Void Form1 :: ONactionPerformiran (const int max_buff_size \u003d 512; prekidač (actiond) (slučaj ID_Button_ok: // Reakcija na pritiskanjem tipke Izračunaj (// Dobijte reprezentaciju stupnjeva, minuta i širine i ... String B_deg_str (__ pb_deg-\u003e gettext ()); string b_min_str (__ pb_min-\u003e gettext ()); string b_sec_str (__ pb_sec-\u003e gettext ()); //...gettext string l_deg_str (__ pl_deg -\u003e gettext ()); String l_min_str (__ pl_min-\u003e gettExt ()); string l_sec_str (__ pl_sec-\u003e gettext ()); // ... string h_str (__ ph-\u003e gettext ()); dvostruko b_deg, b_min, b_sec; dvostruko l_deg , L_min, L_SEC; Dvostruko H; // Pretvaranje niza predstavljanja brojeva u pravi oblik za izračun rezultat R1 \u003d Dvostruko :: Parse (b_deg_str, B_DEG); rezultat R2 \u003d Dvostruko :: Parse (b_min_str, b_min); Dvostruka :: Parse (b_sec_str, b_sec); rezultat R4 \u003d Dvostruko :: Parse (l_deg_str, l_deg); rezultat R5 \u003d Dvostruko :: Parse (l_min_str, L_min); Rezultat R6 \u003d Dvostruko :: Rezultat (l_sec_str, L_SEC); R7 \u003d Dvostruko :: PARS e (h_str, H); // dvostruki b_in_decimal \u003d b_deg + b_min / 60 + b_sec / 3600 izračuni; dvostruki l_in_decimal \u003d l_deg + l_min / 60 + l_sec / 3600; Dvostruki ESQR \u003d 2 * Alfa- (Alfa * Alfa); Dvostruki n \u003d a / matematika :: sqrt (1-esqr * (matematika :: grijeh (b_in_decimal)) * (matematika :: grijeh (b_in_decimal))); Dvostruki X \u003d (n + h) * matematika :: cos (b_in_decimal) * matematika :: cos (l_in_decimal); Double Y \u003d (n + h) * matematika :: cos (b_in_decimal) * matematika :: grijeh (l_in_decimal); String; Gudački stroj; // pretvoriti numeričke koordinatne vrijednosti za reprezentation stres str .Format (max_buff_size, l "% f", X); Stroj.format (max_buff_size, l "% f", y); // Izlaz brojeva u naljepnici __px-\u003e SetXext (L "X \u003d" + STRX); __ Py-\u003e Setext (L "Y \u003d" + STRY); __px-\u003e crtanje (); __ py-\u003e crtanje (); __px-\u003e show (); __ py-\u003e show (); ) Pauza; Slučaj ID_BUTTON_CLEAR: (// Reakcija da pritisnete CLEAR tipku // Kreiraj dijaloški okvir s U redu i poništima gumba i pitanje - Obriši sva polja? MesnesBox * PMESSAGEBOX \u003d Nova poruka (); L "Brisanje svih polja?", Msgbox_style_okcancel, 9000); INT MODALRESULT; PMESSAGEBOX-\u003e SHOWANDWAIT (MODALRESULT); // Ako je odgovor pozitivan, onda ... ako (modalresult \u003d\u003d msgbox_resuelt_ok) (// unos polja i natpisi naljepnice __pb_deg-\u003e jasno (); __pb_min-\u003e jasno (); __pb_sec-\u003e bistar (); __pl_deg-\u003e bistar (); __pl_min-\u003e jasno (); __ph_sec-\u003e jasno (); \u003e Obriši (); __px -\u003e setting (l "x \u003d"); __ py-\u003e sorsext (l "y \u003d");) // brisanje poruke Obriši PMESSAGEBOX;) prekid; Zadano: prekid; ))))
Izgled simulatora s programom za pokretanje je kako slijedi:
On je s porukom:
Ovdje se čini, i to je to. Želim napomenuti da se aplikacija uopće ne odnosi na širinu pokrivenosti i ispravnost svih teksta, na primjer, ne postoji "zaštita za budu", kao što se nadam da ću mudraju mog prijatelja i četiri njegova kolege za koje je ovaj program namijenjen.
Nedavno je dobio još jednu razvojnu aplikaciju za Bada - trebate pretraživati \u200b\u200bi prikazati na karti najbližih objekata, kao što su bankomati ili terminali nadopunjavanja računa. Ako je ova tema zanimljiva nekome, rado ću podijeliti vaše iskustvo.
Ako je netko imao pitanje da, u stvari, s programom za sljedeći, onda je to detaljno opisano u člancima na web stranici Bada Developer, neću se to odnositi na to, jer je programiranje još više komplicirano.
Dostupni su izvori primjene
» Whatsapp za Bada.
Ako ste vlasnik Samsung Smartphone koji pokreće Bada operativni sustav, a zatim instalirajte WhatsApp jednim klikom na gumb neće raditi. Za instalaciju trebate preuzeti besplatno Whatsapp za Bada, a zatim instalirati.
Vatsap za Buda je posebna instalacijska datoteka prilagođena ovom operativnom sustavu. To je neslužbena verzija glasnika, ali radi stabilno i pruža mogućnost uživanja u svim prednostima Watsapa. Proizvođači pametnih telefona iz ovog OS-a ostavili su gluhe na zahtjeve korisnika portanja ove aplikacije na Bada platformi.
Bada je operativni sustav za modele proizvedene od strane Samsung Wave serije, koji je modificirani Android OS. Budući da to nije sasvim android, onda u trgovinama aplikacija za Badu nećete naći Vatsap. Ali zahvaljujući ne-jedinstvenim programerima, možemo preuzeti prilagođenu Vatsap datoteku za Bada i instalirati rusku verziju.
Postupak instalacije
1. Preuzmite whatsapp datoteku s proširenjem. Možete preuzeti na računalu, a zatim ga bacite na telefon ili odmah preuzeti s telefona. Datoteka je prilično velika (oko 35 MB), pa ako nemate neograničen internet na telefonu, bolje je povezati se s Wi-Fi mrežom, a zatim preuzeti. Obično se ova datoteka ne preuzima u arhivu, ali odmah kao instalacija. Stoga ga ne morate raspakirati ili napraviti još dodatnih radnji.
2. Pokrenite datoteku, čekajući instalaciju. Ako vam se dajete potrebu za promjenom sigurnosnih postavki, isključite. Nakon instalacije, budite sigurni da se vratite! Također vam je potrebno dopustiti pristup internetu, komori, mikrofonu itd. Sve je dopušteno, inače se program neće uspostaviti.
3. Registriranje u Whatsapp s telefonskim brojem i SMS-om s potvrdom i početi koristiti!
Nakon registracije i prijave možete kroz WhatsApp:
- komunicirati pomoću tekstualnih poruka, revizije ili video konferencije;
- pošaljite fotografije, video, dokumente, dodati emotikone;
- sudjelovati u komunikaciji u općim skupinama;
- da biste vidjeli tko iz vaše knjige kontakti već imaju vatsap i pozvati one koji još nisu instalirani.
Modeli telefona i pametnih telefona koji se oslobađaju pod operativnim sustavom Bada su malo, ali oni su, a postoji mogućnost da će kasnije tvrtka Samsung nastaviti proizvoditi pametne telefone s ovim operativnim sustavom. Sada su svi pametni telefoni valova serije opremljeni Bada OS-om. Potpuni popis modela ispod u tablici.
Odbio me nedavno postao vlasnik pametnog telefona Samsung Wave 525 s Bada operativnim sustavom. U načelu, trebala sam samo dvije funkcije s telefona - glazbeni player, u kojem obične slušalice s 3,5-mini-mini-mini i pristupom internetu putem Wi-Fi. Novi val 525 s promjenjivim uspjehom je u stanju svima. "Ali," pomislio sam, "jer ima hrabrost da se nazove smartphone, morate ga učitati u cijelosti." I počeo se opterećivati.
Sve "native" aplikacije na telefonu s Bada sustavom stavljaju se kroz Samsung Apps Store. Možete se povezati s njim ili putem primjene istog imena na telefonu ili putem veze s računalom pomoću programa Samsung Kies Desktop. Budući da nisam stigao dom Wi-Fi, izabrao sam drugu opciju.
Kada je telefon povezan s kies računalom odmah ponuđeno za ažuriranje firmvera. Treba napomenuti ovdje da u mojoj memoriji još uvijek postoje živi uspomene na ažuriranje firmwarea od strane programa tvrtke na moj prethodni telefon - Sony Ericsson K800i. Program ažuriranja preuzet je s službenog ruskog-govornog područja, postupak ažuriranja firmware je bio uspješan. Nakon toga, imao sam prekrasan engleski jezik bez ikakvih znakova ruskog. Nakon toga sam napisao nekoliko puta u tehničkoj podršci - robota svaki put kad me je poslao odgovor dva Pisma koje su donijeli ulaznicu na moj problem i s vremenom će se riješiti. Ovo sretno vrijeme nikada nije došlo.
Ali dovoljno lirskih odstupanja. Bacanje vašeg tužnog iskustva, još sam pritisnuo gumb "Ažuriraj firmware". I ... ništa se nije dogodilo. Telefon je isključen, a zatim ponovno spojen i prozor s prijedlogom za ažuriranje firmvera ponovno izašao. Tehnika stvara čuda.
U App Storeu pogledao sam cijene i malo se smirio. Bio sam uplašen da su cijene u ukrajinskom Samsung Apps podružnice neka vrsta lud. Nije baš - uglavnom cijene za plaćene aplikacije kreću se od 10 do 50 grivna, a postoji mnogo slobodnog softvera. Iako je, kako se kasnije ispostavilo, broj ovdje i nije se počeo preseliti u kvalitetu.
Odmah je požurio u oči gotovo potpuna odsutnost lokaliziranih aplikacija. Štoviše, ne samo na uobičajenom i relativno razumljivom engleskom jeziku, već i na potpuno nečistom arapskom, kineskom (japanskom? Korejski? Pogled za razlikovanje tih hijeroglifa ...). Posebno iznenađen nevjerojatnim obiljem primjena s natpisom "samo vijetnamske" (samo u vijetnamskom). A to je u ukrajinskom dijelu trgovine! Netko je bio lijen za postavljanje područja distribucije?
Zahvaljujući ovom "pažljivom" odabiru aplikacija, cijela dućana podsjeća na deponija substandarda mulja. Još uvijek sam našao snagu da kopam i preselila gotovo sve besplatne aplikacije za nekoliko dana. Nakon toga, u mom pametnom telefonu pojavio se: tri vrste klavira različitih stupnjeva nijem, nekoliko kočenja igračaka, jedno kočenje, ali lijep program za bilješku, Dropbox -Client cjevovoda, program sa zvukovima za opuštanje i jednostavan program koji se zove vibrator (pogodak što radi). Sve. Izuzetno koristan softver, bez spora. Da bih čitao knjige, morao sam instalirati Java aplikacija foliant (prekrasan prog, usput). Normalni media player za promjenu slabog audio i video playera nije pronašao ni u plaćenim aplikacijama.
Pružam prisutnost plaćenog klijenta za Vkontakte iz Globallogic Inc - "CContact". U snimkama zaslona, \u200b\u200bprogram izgleda prilično pristojno, pa čak i lijepo. Barem je to gotovo jedina primjena, dizajn sličan sučelju same telefona i prividne "native" - \u200b\u200bi to se ne može reći ni o nekim aplikacijama. Ali nisam kupio ovu aplikaciju, jer nisam razmišljao, zašto bi mi bilo potrebno.
Takve dojmove. Ljudi u tim kažu da je Bada potpuno mladi OS, zbog svega nereda. Da vidimo postoje li normalne aplikacije tijekom vremena, trgovina će biti stavljena u red. Do sada je sve loše.
Općenito, svakako nisam navijač takvih stvari. Vjerujem da bi programeri trebali dobiti novac za svoj rad. Međutim, uvjeren sam da će odrasla osoba, otapala kupiti igru \u200b\u200bili program ako joj se to svidjelo. Nažalost, to nije sve moguće pokušati bez kupnje, i stoga u takvom kutu instalacija plaćenog softvera izgleda prilično prihvatljivo. U svakom slučaju, metoda je i radi. Također s obzirom na to, a daljnja sudbina vlasnika Badafonova je općenito nerazumljiva, konačno, ne smatramo razvoje kako bi iskoristili razvoj događaja.
Dakle, kao i uvijek, upozorenje je metoda rada. Provjerio sam ga na sebe. Ali u svakom slučaju, ako razbijete izvedbu uređaja - to su samo vaši problemi. Učinite sve u skladu s uputama i sve će raditi kao sat. Dogovoren.
Početak.
Testirao sam ovu metodu na Samsung S8500 valu i službenom ukrajinskom firmveru. Možete ga preuzeti.
Ne trebamo mnogo.
1. Multiloader - Uzmite ga. Verzija bilo koju, ali ja bih uzeti posljednje.
2. AppS_compressid_Scoof_wave_i.bin datoteka - preuzmite ga na link (ovo je za prvo tkanje, za Ukrajinu)
Stavili smo ljutite ptice.
Prije svega, treperimo aplikacije_comed_coof_wave_ datoteku (ovisno o onome što imate). To se radi jednom. Da biste to učinili, pokrenite multiloader i odaberite LSI, promjena boot i potpuni download. Screenshot Clicketedly:
Dodajte datoteku. Možete jednostavno povući prozor programa. Smanjiti telefon. Pritisnite tipku za glasnoću u isto vrijeme + zaključavanje + uključivanje (crvena cijev). Način pada učitavanja. Zatim pretraživanje porta. Zatim preuzmite. Ako ste barem jednom zašili svoj telefon za vas nije vijest.
Datoteka je ušivena - dobra.
Nakon raspakiranja bada valova podvala (programa u arhivi). Pronađite unutar takve datoteke: Badcertificate.cer. Kopirajte ga na telefon (bez obzira gdje, ali bolje u mapi Ostalo). Mi idemo u telefon u mapu na kojoj ste kopirali i dodirnite datoteku. Slažem se s upozorenjem i instaliranjem certifikata.
Raspakirajte arhivu s igrom ili aplikacijom, u našem slučaju, Angrybirds.rar Arhiva i navedite put do mape, a posebno u datoteku s imenom aplikacije igre .exe (u našem slučaju angrybirds.exe).
Najvjerojatnije će datoteka ležati u mapi za bin. Stavili smo oznaku kao što je prikazano na screenshotu. Alternativno kliknite Prvi gumb 1. Prijavite se, a zatim gumb 2. Preimenuj.
Alternativno kliknite Prvu tipku 1. Prijavite se
Svatko je ovdje. Idite na karticu Kopiranje. Ručni telefon u načinu izmjenjivog diska i odaberite memorijsku karticu na padajućem popisu. Ako ne, kliknite gumb s dvije zelene strelice u blizini. Čekamo do čizma.
Nakon uspješnog kopiranja. Izrežite telefon i idite na telefon uz put postavki - Općenito - Postavite instalaciju - Odaberite memorijsku karticu. Ručni telefon u Samsung Kies modu.