Descrierea pas cu pas a creării unei aplicații simple pentru Samsung Bada. Samsung Apps for OS Bada - impresii ale unui utilizator rău Descărcați aplicații pentru Samsung bada
Există deja articole destul de detaliate despre Habré care sunt dedicate lui Bada, de exemplu acesta și acesta, dar nu există o descriere pas cu pas a creării unei aplicații pentru începători. Dacă cineva este interesat, vă rugăm să vedeți cat.
Subiectul scrisului a apărut întâmplător - o cunoștință este implicată activ în stabilirea limitelor terenurilor folosind GPS într-o companie geodezică; Specificul lucrării (de unde a venit este o întrebare bună) este că coordonatele geodezice rezultate (să explic că aceasta înseamnă latitudine și longitudine) trebuie convertite în coordonate dreptunghiulare imediat după ce sunt primite. Compania nu are laptop-uri capabile să reziste la o zi de lucru de 8 ore și nu intenționează să facă acest lucru, dar un cunoscut și-a cumpărat recent un smartphone Samsung cu sistemul de operare Bada, care este promovat activ în Ucraina, și apoi întrebarea urmat: dacă puteți descărca jocuri pentru telefonul dvs., există o aplicație care poate rezolva problema descrisă pur de inginerie? Desigur, nu a fost găsită o astfel de aplicație și am primit o ofertă amabilă de a scrie una contra unei anumite taxe.
Instrumente
Pentru a dezvolta aplicații pentru Bada, se folosește Bada SDK 1.2.0, care poate fi descărcat prin înregistrarea pe site-ul dezvoltatorului Bada. Nu este nimic complicat în acest proces, dar în etapa de selectare a fișierelor de descărcat, eu, sincer, am „pierdut”, descarcând doar SDK-ul, dar nu și așa-numitul pachet lingvistic, sperând că, așa cum este scris pe site, acesta descărcarea se va întâmpla automat după instalarea SDK-ului. Cu toate acestea, ceva a mers prost în timpul fazei de instalare, instalarea a continuat fără descărcarea pachetului de limbă, ceea ce a dus la imposibilitatea fie de a construi, fie de a lansa aplicația.După ce au descărcat SDK-ul și pachetul de limbă, acestea ar trebui să fie plasate într-un singur loc, iar la instalarea SDK-ului sau la modificarea acestuia, instalatorul va ridica pachetul lingvistic și îl va instala independent.
Crearea propriu-zisă a aplicației
Mediul de dezvoltare se bazează pe Eclipse, limbajul de programare C++ folosit. Să începem prin a trece la crearea unei noi aplicații cu comanda evidentă File -> New -> bada Application Project. În fereastra care apare, ar trebui să specificați numele proiectului în câmpul Nume proiect și să selectați tipul de aplicație din lista Tip proiect - aplicație bazată pe formular.
În continuare, mediul vă va cere să determinați parametrii tehnici ai dispozitivului pentru care va fi destinată aplicația (rezoluția ecranului, disponibilitatea GPS etc.). Acești parametri sunt definiți într-un fișier manifest special, Manifest.xml, pe care îl puteți selecta dintre fișierele SDK, îl puteți crea și descărca de pe site-ul web Bada Developers sau îl puteți crea pe al dvs. Fără mai multă prelungire, am folosit fișierul manifest din folderele Samples care sunt instalate cu SDK-ul, deoarece aplicația mea nu a necesitat niciun fel de clopoței, ci doar rezoluția ecranului a fost importantă.
Apoi, mediul vă va cere să specificați directorul rădăcină al SDK-ului, nu ar trebui să existe probleme cu aceasta. După selecție, numele modelului de dispozitiv și API-ul acestuia vor apărea în listă, care va fi folosită în viitor pentru programare.
Următorul pas este definirea numelui formularului implicit care va apărea imediat după lansarea aplicației. Fișierele *.h și *.cpp vor fi generate folosind acest nume.
În continuare, va trebui să determinați dacă adăugați sau nu suport pentru scalare automată și cea mai bună rezoluție a ecranului dacă se adaugă această caracteristică. După cum am înțeles, este mai bine să faceți acest lucru, deoarece aplicația va putea funcționa pe diferite dispozitive cu rezoluții diferite și nu va trebui să fie reproiectată.
Următoarea verigă din lanțul lung de setări este determinarea ID-ului aplicației, pentru a certifica funcțiile aplicației dacă trebuie să citească și să scrie în foldere protejate. Nu aveam nevoie de asta, așa că am omis acest pas.
Aproape terminat - definirea proprietăților evidente ale aplicației Nume, Furnizor și Descriere.
Și acum aproape că s-a terminat - asta determină configurațiile necesare pentru dezvoltare: recomand să lăsați totul implicit, dar acum cea mai importantă configurație este Simulator-Debug - aceasta este capacitatea de a depana codul pe un simulator de dispozitiv, Target-Release - o configurație pentru compilarea aplicației înainte de a o încărca pe dispozitivul real.
Ultimul pas este un rezumat al tuturor setărilor din fereastra Rezumat, pe care îl puteți citi din nou și vă asigurați că totul este selectat corect.
După finalizarea setărilor, viitoarea aplicație apare în Project Explorer, făcând clic pe care duce la extinderea fișierelor de resurse în fereastra Resurse și apare următoarea fereastră:
După ce faceți clic pe formular (și în general pe orice control) din fila Proprietăți, puteți modifica proprietățile evidente ale aplicației, cum ar fi textul din titlu, culoarea de fundal, prezența și numele tastelor soft.
Am mutat imediat butonul gata făcut, pe care mediul l-a generat cu amabilitate, am coborât și am scris Calculați pe el. Având Editorul GUI, este ușor să obțineți următoarea interfață, care este bine potrivită pentru sarcina mea (cred că procesul de transfer al controalelor în formular și setarea proprietăților acestora nu provoacă dificultăți); Eticheta evidentă a fost folosită ca etichete pentru câmpurile de intrare, iar EditField a fost folosit ca câmpuri de intrare; Etichetele sunt, de asemenea, folosite pentru a afișa rezultatul calculelor, deoarece nu pot fi editate:
Acum pentru codificarea reală.
O aplicație care rulează trece prin mai multe etape (Ajutorul este foarte detaliat, puteți afla detaliile acolo), acum ne interesează în primul rând etapa de inițializare a aplicației, de care este responsabilă metoda OnInitializing(void) a clasei formular, care poate fi găsit în dosar<ВАША_ФОРМА>.cpp în folderul src al proiectului.
În mod implicit, această metodă arată astfel:
Rezultat Form1::OnInitializing(void) ( rezultatul r = E_SUCCESS; // TODO: Adăugați aici codul de inițializare // Obțineți un buton prin ID de resursă __pButtonOk = static_cast
Am facut asa:
protejat: static const int ID_BUTTON_OK = 101; // ID nou de acțiune pentru butonul CLEAR static const int ID_BUTTON_CLEAR=102; // constante geodezice static const int a=6378137; static const float alfa=1/298.257223563; Osp::Ui::Controle::Button *__pButtonOk; // câmp nou: butonul Osp::Ui::Controls::Button *__pButtonClear; // câmpuri noi: editări și etichete Osp::Ui::Controls::EditField *__pB_deg; Osp::Ui::Controle::EditField *__pB_min; Osp::Ui::Controls::EditField *__pB_sec; Osp::Ui::Controls::EditField *__pL_deg; Osp::Ui::Controle::EditField *__pL_min; Osp::Ui::Controle::EditField *__pL_sec; Osp::Ui::Controle::EditField *__pH; Osp::Ui::Controls::Label *__pX; Osp::Ui::Controls::Label *__pY;
Acum, în metoda OnInitializing(void), puteți crea un buton Clear și îi puteți atribui o Acțiune Id și un Ascultător de evenimente „ascultător”. Vom face același lucru cu EditField și Label, fără a adăuga, totuși, Id Action și Event Listener, deoarece reacția lor la acțiunile utilizatorului nu este furnizată în aplicația noastră simplă (IDC_BUTTON1, IDC_EDITFIELD1 etc. sunt valorile Name). proprietatea butonului).
PButtonOk = static_cast
În această etapă, puteți deja să lansați aplicația și să vedeți cum sunt introduse datele în simulator, dar, desigur, nu există niciun beneficiu până când evenimentele de clic pe buton nu sunt procesate.
Pentru a rezolva această problemă, se folosește metoda clasei de formular OnActionPerformed(const Osp::Ui::Control& source, int actionId). După cum puteți vedea, al doilea parametru este ID-ul acțiunii deja menționat mai sus. Când aplicația este executată, evenimentele de clic pe buton sunt „ascultate” și ID-ul de acțiune atribuit acestora este transmis la OnActionPerformed (const Osp::Ui::Control& source, int actionId). Dacă aici este prevăzută prelucrarea pentru un astfel de identificator, aceasta este efectuată.
OnActionPerformed are un șablon de comutare pentru analiza parametrului actionId, este convenabil de utilizat. În continuare, îmi voi permite să dau codul acestei metode cu comentarii detaliate:
Void Form1::OnActionPerformed(const Osp::Ui::Control& source, int actionId) ( const int MAX_BUFF_SIZE = 512; switch(actionId) (case ID_BUTTON_OK: // reacție la apăsarea butonului Calculate ( // obține o reprezentare șir de grade, minute și secunde de latitudine și... String B_deg_str(__pB_deg->GetText()); String B_min_str(__pB_min->GetText()); String L_deg_str(__pL_deg) ->GetText()); String L_min_str(__pL_min->GetText()); ,B_sec; dublu L_deg,L_min,L_sec dublu H // conversie în forma reală a reprezentărilor pentru calcule r1=Double::Parse(B_deg_str,B_deg; ); rezultat r3=Double::Parse(B_sec_str,B_sec rezultat r4=Double::Parse(L_deg_str,L_deg); ,L_sec ); rezultat r7=Double::Parse(H_str,H); // calcule duble b_in_decimal=B_deg+B_min/60+B_sec/3600; dublu l_in_zecimal=L_deg+L_min/60+L_sec/3600; dublu eSqr=2*alfa-(alfa*alfa); dublu N=a/Math::Sqrt(1-eSqr*(Math::Sin(b_in_zecimal))*(Math::Sin(b_in_zecimal))); dublu X=(N+H)*Math::Cos(b_in_zecimal)*Math::Cos(l_in_zecimal); dublu Y=(N+H)*Math::Cos(b_in_zecimal)*Math::Sin(l_in_zecimal); String strX; String strY; // conversia valorilor coordonatelor numerice în reprezentare șir strX.Format(MAX_BUFF_SIZE,L"%f",X); strY.Format(MAX_BUFF_SIZE,L"%f",Y); // scoateți numerele primite la Label __pX->SetText(L"X="+strX);__pY->SetText(L"Y="+strY); __pX->Draw();__pY->Draw(); __pX->Show();__pY->Show(); ) pauză;
case ID_BUTTON_CLEAR: ( // reacție la apăsarea butonului Clear // creați o casetă de dialog cu butoanele OK și CANCEL și întrebarea - ștergeți toate câmpurile? MessageBox *pMessageBox = new MessageBox(); pMessageBox->Construct(L"MessageBox" , L"Clear all fields?" , MSGBOX_STYLE_OKCANCEL ,9000 int ModalResult->ShowAndWait(ModalResult, atunci... if (ModalResult==MSGBOX_RESULT_OK); ștergeți câmpurile de introducere și Etichetă __pB_deg->Clear(); // șterge MessageBox șterge pMessageBox) break; implicit: break; ) )
La fel și cu MessageBox:
Asta pare să fie tot. Aș dori să remarc că aplicația nu se pretinde deloc a fi amplă și corectă în toate formulările, de exemplu, nu există deloc „protecția proștilor”, deoarece sper în sănătatea minții prietenului meu și a celor patru colegi pentru care; acest program este destinat.
Destul de recent, a fost primită o altă aplicație de dezvoltare pentru Bada - este necesară căutarea și afișarea pe hartă a obiectelor din apropiere, cum ar fi bancomate sau terminale de completare a conturilor. Dacă acest subiect este interesant pentru cineva, voi fi bucuros să împărtășesc experiența mea.
Dacă cineva are o întrebare despre ce să facă în continuare cu programul, aceasta este tratată în detaliu în articolele de pe site-ul Bada Developer, nu voi atinge acest lucru, deoarece programarea este încă un subiect mai complex;
Sursele de aplicație sunt disponibile
În general, cu siguranță nu sunt un susținător al unor astfel de lucruri. Cred că dezvoltatorii ar trebui să primească bani pentru munca lor. Cu toate acestea, sunt convins că o persoană adultă, solventă, va cumpăra un joc sau un program dacă îi place. Din păcate, nu totul poate fi încercat fără achiziție și, prin urmare, din această perspectivă, instalarea de software plătit pentru evaluare pare destul de acceptabilă. În orice caz, există o cale și funcționează. De asemenea, având în vedere că soarta viitoare a proprietarilor de badafone este în general de neînțeles, nu cred că este rușinos să profităm în sfârșit de evoluții.
Deci, ca întotdeauna, vă avertizez - metoda funcționează. L-am testat pe mine. Dar, în orice caz, dacă întrerupi performanța dispozitivului tău, aceasta este doar problema ta. Faceți totul conform instrucțiunilor și totul va funcționa ca un ceas. De acord.
Să începem.
Am testat această metodă pe Samsung S8500 Wave și firmware-ul oficial ucrainean. Îl poți descărca de pe .
Nu avem nevoie de multe.
1. Multiloader – luați-l cu . Orice versiune, dar aș lua-o pe cea mai recentă.
2. File apps_Compressed_spoof_Wave_I.bin – descărcați-l de pe link (acesta este pentru primul val, pentru Ucraina)
Să instalăm Angry Birds.
În primul rând, flashăm fișierul apps_Compressed_spoof_Wave_ (în funcție de ce val aveți). Acest lucru se face o dată. Pentru a face acest lucru, lansați Multiloader și selectați LSI, Boot Change și Full Download. Captură de ecran pe care se poate face clic:
Adăugați fișierul dvs. Puteți pur și simplu să îl glisați și să-l plasați în fereastra programului. Oprim telefonul. Apăsați și mențineți apăsat Volum Jos + Blocare + Alimentare (țeavă roșie) în același timp. Modul de descărcare se va aprinde. Apoi Căutare Port. Apoi Descărcați. Dacă ți-ai cusut vreodată propriul telefon, aceasta nu este o noutate pentru tine.
Dosarul este cusut - bine.
Apoi despachetați Bada Wave Spoof (program în arhivă). În interior găsim următorul fișier: BadaCertificate.cer. Îl copiem pe telefon (nu contează unde, dar este mai bine în folderul Others). Pe telefon, accesați folderul în care l-ați copiat și atingeți fișierul. Fiți de acord cu avertismentul și instalați certificatul.
Despachetăm arhiva cu jocul sau aplicația, în cazul nostru arhiva AngryBirds.rar și specificăm calea către folder și, în special, către fișierul cu numele jocului application.exe (în cazul nostru AngryBirds.exe) .
Cel mai probabil fișierul va fi în folderul Bin. Bifați caseta așa cum se arată în captură de ecran. Alternativ, apăsați butonul 1. Semnați, apoi butonul 2. Redenumiți.
Pe rând, apăsați mai întâi butonul 1. Semnați
Toată lumea este aici. Accesați fila Copiere. Conectăm telefonul în modul Removable Disk și selectăm cardul de memorie din lista derulantă. Dacă nu, faceți clic pe butonul cu două săgeți verzi lângă el. Așteptăm să se încarce.
După copierea cu succes. Deconectam telefonul și mergem la telefon pe calea Setări - General - Locație de instalare - selectați cardul de memorie. Conectăm telefonul în modul Samsung Kies.
Recent, s-a întâmplat să devin proprietarul unui „smartphone” Samsung Wave 525 cu sistemul de operare Bada. În principiu, aveam nevoie doar de două funcții de la telefon - un music player, în care poți conecta căști obișnuite cu o mini mufă de 3,5 și acces la Internet prin Wi-Fi. Noul Wave 525 poate face toate acestea cu diferite grade de succes. „Dar”, m-am gândit, „din moment ce are curajul să se numească un smartphone, trebuie să-l încărcăm la maximum.” Și a început să încarce.
Toate aplicațiile „native” de pe un telefon cu sistemul Bada sunt instalate prin magazinul Samsung Apps. Vă puteți conecta la acesta fie prin aplicația cu același nume de pe telefon, fie conectându-vă la un computer folosind programul desktop Samsung Kies. Deoarece nu am achiziționat încă Wi-Fi acasă, am ales a doua opțiune.
Când a conectat telefonul la computer, Kies s-a oferit imediat să actualizeze firmware-ul. Trebuie remarcat aici că încă mai am amintiri vii despre actualizarea firmware-ului cu un program proprietar pe telefonul meu anterior - Sony Ericsson k800i. Programul de actualizare a fost descărcat de pe site-ul web oficial în limba rusă, procedura de actualizare a firmware-ului a avut succes. După aceea, m-am trezit în mâinile mele cu un telefon minunat în limba engleză, fără semne ale limbii ruse. După aceea, am scris suportului tehnic de mai multe ori - de fiecare dată când robotul m-a trimis înapoi Două scrisori prin care se afirmă că au deschis un bilet pentru problema mea și o vor rezolva în timp. Acest timp fericit nu a venit niciodată.
Dar destule digresiuni lirice. Renunțând la experiența mea tristă, am făcut clic în continuare pe butonul „Actualizează firmware”. Și... nu sa întâmplat nimic. Telefonul s-a deconectat, apoi s-a conectat din nou și a apărut din nou fereastra care solicita actualizarea firmware-ului. Tehnologia face minuni.
In magazinul de aplicatii m-am uitat la preturi si m-am linistit putin. M-am speriat că prețurile din filiala ucraineană a Samsung Apps erau cumva prohibitiv de nebunești. Acest lucru nu este în întregime adevărat - prețurile pentru aplicațiile plătite variază în general între 10 și 50 grivne și există, de asemenea, o mulțime de software gratuit. Deși, după cum sa dovedit mai târziu, cantitatea de aici nu a început să se transforme în calitate.
Absența aproape completă a aplicațiilor localizate mi-a atras imediat atenția. Mai mult, nu numai în limba engleză familiară și relativ ușor de înțeles, ci și în arabă, chineză (japoneză? coreeană? Găsește-ți aceste hieroglife...). Am fost surprins mai ales de abundența incredibilă de aplicații cu nota „Numai în vietnameză” (doar în vietnameză). Și asta se află în secțiunea ucraineană a magazinului! A fost cineva prea leneș să stabilească regiunile de distribuție?
Datorită acestei selecții „atente” de aplicații, întregul magazin seamănă cu o gură de software substandard. Am găsit încă puterea să mă adâncesc în el și în câteva zile am trecut prin aproape toate aplicațiile gratuite. După aceea, mi-a apărut smartphone-ul: trei tipuri de piane de diferite grade de mizerie, mai multe jucării lente, un program lent, dar drăguț pentru note, clientul Dropbox Pipeline, un program cu sunete pentru relaxare și un program simplu numit Vibrator (puteți ghici ce face). Toate. Software extrem de util, fără îndoială. Pentru a citi cărți a trebuit să instalez aplicația java Foliant (un program excelent, de altfel). Nu exista un media player normal care să înlocuiască playerul audio și video slab al telefonului, chiar și în aplicațiile plătite.
Am fost amuzat de prezența unui client plătit pentru VKontakte de la GlobalLogic inc - „ЄKontakte”. În capturi de ecran, programul arată destul de decent și chiar drăguț. Cel puțin, aceasta este aproape singura aplicație care este similară ca design cu interfața telefonului în sine și pare „nativă” - și acest lucru nu se poate spune nici măcar despre unele dintre aplicațiile incluse în pachet. Dar nu am cumpărat această aplicație, pentru că nu mi-am putut da seama de ce aveam nevoie de ea.
Acestea sunt impresiile. Oamenii de pe aceste interneturi ale tale spun că Bada este un sistem de operare foarte tânăr, de aceea este totul o mizerie. Sa vedem, poate vor aparea in timp aplicatii normale, magazinul va fi pus in ordine. Până acum, totul este rău.
» Whatsapp pentru Bada
Dacă sunteți proprietarul unui smartphone Samsung care rulează sistemul de operare Bada, atunci nu veți putea instala Whatsapp cu un singur clic pe buton. Pentru a instala, trebuie să descărcați Whatsapp pentru Bada gratuit și apoi să îl instalați.
Whatsapp for Bad este un fișier de instalare special adaptat pentru acest sistem de operare. Aceasta este o versiune neoficială a messengerului, dar funcționează stabil și oferă posibilitatea de a vă bucura de toate beneficiile WhatsApp. Producătorii de smartphone-uri care rulează acest sistem de operare au rămas surzi la solicitările utilizatorilor de a porta această aplicație pe platforma Bada.
Bada este un sistem de operare pentru modelele din seria Samsung Wave, care este un sistem de operare Android modificat. Deoarece acesta nu este tocmai Android, nu veți găsi WhatsApp în magazinele de aplicații pentru Bud. Dar datorită programatorilor grijulii, putem descărca fișierul WhatsApp adaptat pentru Bada și putem instala versiunea rusă.
Procesul de instalare
1. Descărcați fișierul WhatsApp cu extensia .apk. Îl puteți descărca pe computer și apoi îl puteți transfera pe telefon sau îl puteți descărca direct de pe telefon. Fișierul este destul de mare (aproximativ 35 MB), așa că dacă nu aveți internet nelimitat pe telefon, este mai bine să vă conectați la o rețea Wi-fi și apoi să descărcați. De obicei, acest fișier nu este descărcat în arhivă, ci imediat ca fișier de instalare. Prin urmare, nu este nevoie să-l despachetați sau să faceți alți pași suplimentari.
2. Rulați fișierul și așteptați instalarea. Dacă la pornire primiți mesaje despre necesitatea de a modifica setările de securitate, atunci dezactivați-l. După instalare, asigurați-vă că îl reporniți! De asemenea, este posibil să aveți nevoie de permisiuni pentru a accesa internetul, camera foto, microfonul etc. Permitem totul, altfel programul nu se va instala.
3. Înregistrează-te pe WhatsApp folosind numărul tău de telefon și confirmarea prin SMS și începe să-l folosești!
După înregistrare și autentificare, puteți prin Whatsapp:
- comunica prin mesaje text, conferințe audio sau video;
- trimiteți fotografii, videoclipuri, documente, adăugați emoticoane;
- participa la comunicare în grupuri generale;
- vezi cine din agenda ta de contact are deja WhatsApp și invită-i pe cei care nu îl au încă instalat.
Sunt puține modele de telefoane și smartphone-uri care sunt lansate pentru sistemul de operare Bada, dar ele există și este probabil ca în viitor Samsung să producă în continuare smartphone-uri cu acest sistem de operare. Acum toate smartphone-urile din seria Wave sunt echipate cu Bada OS. Lista completă a modelelor este mai jos în tabel.