- Android Enterprise ofron profile pune, pajisje të dedikuara dhe konfigurime të menaxhuara për të menaxhuar në mënyrë të sigurt aplikacionet dhe të dhënat e korporatave.
- Zhvillimi profesional kërkon një rrugë gjithëpërfshirëse trajnimi dhe një arkitekturë moderne të bazuar në shtresa, modele të të dhënave dhe rrjedhë unidireksionale.
- Kombinimi i testimit me Test DPC, SSO me skeda të personalizuara dhe praktikat më të mira të DI siguron aplikacione të shkallëzueshme, të sigurta dhe të gatshme për ndërmarrje.

Nëse po hyni në botën e Android, herët a vonë do t'ju duhen disa... Udhëzues të mirë për Android që shpjegojnë si anën e biznesit ashtu edhe atë të zhvillimit të aplikacioneveTë dish si të programosh disa ekrane nuk është e mjaftueshme: në ditët e sotme duhet të kuptosh profilet e punës, pajisjet e menaxhuara, arkitekturën moderne, sigurinë, SSO-në, testimin… dhe shumë më tepër.
Në këtë udhëzues gjithëpërfshirës do të gjeni një Një përmbledhje e plotë dhe e azhurnuar se si të zhvilloni aplikacione Android të dizajnuara për bizneset dhe për pajisje të shumëfishtaNga bazat e Android Enterprise dhe menaxhimi i pajisjeve deri te strukturimi i kodit me një arkitekturë të fuqishme dhe të shkallëzueshme, ky kurs do t'ju ndihmojë të zhvilloni një hartë të qartë mendore të gjithçkaje që duhet të zotëroni për të krijuar aplikacione profesionale dhe lehtësisht të mirëmbajtura.
Android Enterprise: Si t’i përgatitni aplikacionet tuaja për mjediset e korporatave
Android përfshin një sërë veçorish standarde Karakteristikat e ndërmarrjeve që u mundësojnë organizatave të menaxhojnë në mënyrë të sigurt pajisjet, aplikacionet dhe të dhënatLajmi i mirë është se çdo aplikacion standard Android mbështet këto veçori; lajmi jo aq i mirë është se nëse doni që aplikacioni juaj të shkëlqejë në mjediset e korporatave, do të duhet të shkoni një hap më tej dhe ta përshtatni atë.
Për të përfituar sa më shumë nga Android Enterprise, është mirë të filloni me një Aplikacioni Android është krijuar tashmë, gati për t'u modifikuar dhe me një version minimal prej 5.0 Lollipop (megjithëse rekomandohet 6.0 Marshmallow ose më i lartë). Këto nivele më të vona ofrojnë aftësi të përparuara, veçanërisht për pajisje të dedikuara dhe politika më të rrepta menaxhimi.
Organizatat i përdorin këto veçori për të mundësuar Skenarë të lëvizshmërisë së menaxhuar: nga celularët e punonjësve me të dhëna të ndara personale dhe të punës, deri te kioskat njëpërdorimësheSi zhvillues, do të duhet ta kuptoni këtë ekosistem për të shmangur papajtueshmëritë dhe, mbi të gjitha, për të parandaluar kufizimin e përdorimit të aplikacionit tuaj nga bizneset.
Profilet e punës në Android: ndarja midis jetës personale dhe profesionale
Koncepti kryesor i Android Enterprise është profil pune, një kontejner korporativ i menaxhuar brenda pajisjes së përdoruesitKy profil është i lidhur me llogarinë kryesore të pajisjes, por ruan një ndarje të qartë midis aplikacioneve dhe të dhënave personale dhe profesionale.
Në praktikë, profili i punës vepron si një hapësirë e izoluar ku aplikacionet e ndërmarrjeve mbajnë një emblemë specifike dhe menaxhohen me politikat e tyrePërdoruesi ruan kontrollin e hapësirës së tij personale, ndërsa departamenti i IT-së menaxhon vetëm të dhënat e biznesit dhe aplikacionet që i interesojnë, pa pushtuar pjesën tjetër të pajisjes.
Ndër karakteristikat më të rëndësishme të një profili pune janë si më poshtë: ndarje e sigurt e të dhënave, shpërndarje e aplikacioneve nëpërmjet Google Play të menaxhuar dhe aftësi specifike menaxhimi të kontrolluara nga një administrator, të gjitha të mbështetura nga enkriptimi i plotë i pajisjes.
Një detaj i rëndësishëm është se, kur pajisja ka profile personale dhe pune, zakonisht përdoret një APK të vetëm për të dy hapësirat, ndërsa kontrolluesi i politikave (DPC) është i kufizuar në profilin e punësAdministrimi bëhet përmes klasës DevicePolicyManager, që do të thotë se duhet t'i merrni parasysh këto API nëse zhvilloni zgjidhje të përparuara për ndërmarrjet.
Për të shmangur problemet, është e rëndësishme që Mos supozo se çdo Intent thjesht do të jetë në gjendje të kalojë nga një profil në tjetrin.Disa janë të bllokuara për arsye sigurie dhe do ta zbuloni këtë vetëm përmes testimit. Përpara se të nisni një aktivitet, këshillohet të telefononi Intent.resolveActivity()Nëse kthen null, kjo do të thotë se nuk ka asnjë komponent që mund ta trajtojë atë Intent në atë profil.
Kur shkëmbeni skedarë midis profileve, Android rekomandon përdorimin e URI-të e përmbajtjes me FileProvider, të ndara nëpërmjet Intents me leje specifikeKjo siguron që qasja të jetë e kufizuar në profilin e saktë dhe që aplikacionet e tjera të shohin vetëm atë që është thelbësore. Në të kundërt, aplikacioni i vjetër URI-të file:// që tregojnë shtigje absolute të sistemit të skedarëve nuk funksionojnë nëpër profile dhe mund të shkaktojë dështime kur përpiqeni të hapni burime nga ana tjetër.
Konfigurime të menaxhuara: kontroll i largët i aplikacionit nga IT-ja
Një shtyllë themelore në mjediset e korporatave është Konfigurimet e menaxhuara, një grup parametrash që administratorët mund t'i aplikojnë nga distanca aplikacioneve të përdoruesve. Avantazhi i madh është se ato janë universale: ato funksionojnë me çdo zgjidhje EMM (Menaxhimi i Lëvizshmërisë së Ndërmarrjes).
Falë këtyre konfigurimeve, departamenti i IT-së mund të rregulloni në mënyrë qendrore mënyrën se si sillet aplikacioni në fusha kritike siç janë lidhja, siguria ose kufizimet e përdorimitPër shembull, mund të vendosni nëse aplikacioni sinkronizohet vetëm nëpërmjet Wi-Fi apo edhe nëpërmjet të dhënave celulare, cilat URL lejohen në një shfletues të integruar, si konfigurohet llogaria e email-it, nëse aktivizohet apo jo printimi ose cilat të preferuara janë të parangarkuara.
Nga pikëpamja e zhvilluesit, çelësi është në Kontrolloni këto kufizime në kohët e duhura të ciklit jetësor të aplikacionitNë fillim, këshillohet që kodi të kontrollohet onStart() ose onResume() rezultati i getApplicationRestrictions() për të zbuluar nëse aplikacioni menaxhohet, nëse ka kufizime të përcaktuara tashmë ose nëse ka një status konfigurimi në pritje.
Vlera e kthyer nga getApplicationRestrictions() mund të jetë një paketë me kufizime specifike, një paketë bosh ose një strukturë me çelësin KEY_RESTRICTIONS_PENDINGNë këtë rast të fundit, aplikacioni juaj e di se është nën administrim, por DPC-ja nuk e ka zbatuar ende politikën siç duhet, kështu që gjëja e kujdesshme që duhet bërë është të kufizoni përdorimin e saj dhe ta udhëzoni përdoruesin të kontaktojë administratorin e IT-së.
Për më tepër, politikat mund të ndryshojnë në çdo kohë, prandaj aplikacioni juaj duhet Zbuloni modifikimet e drejtpërdrejta duke regjistruar në mënyrë dinamike transmetimin ACTION_APPLICATION_RESTRICTIONS_CHANGEDIdealisht, duhet të regjistroheni kur aktiviteti ose shërbimi është aktiv dhe të anuloni regjistrimin duke përdorur onPause(), për të shmangur rrjedhjet ose sjelljet e papritura.
Pajisje të dedikuara: kioska, sisteme POS dhe sinjalistikë dixhitale
Një praktikë tjetër e përhapur në kompani është përdorimi i pajisje me një qëllim të vetëm (pajisje të dedikuara), të tilla si kioska, sisteme POS ose tabela sinjalistikeNë këto raste, Android është konfiguruar të shfaqë vetëm një aplikacion ose një grup shumë të kufizuar, duke bllokuar aksesin në aplikacionet kryesore ose të fundit.
Kur një pajisje konfigurohet si e dedikuar, përdoruesi sheh një përvojë e vetme, e kontrolluar, pa asnjë mënyrë të lehtë për t'i shpëtuar aplikacionit kryesorGjithashtu mund të përcaktoni një grup aplikacionesh të lejuara, për shembull në një kioskë biblioteke që shfaq vetëm katalogun dhe një shfletues interneti të korporatës.
Për të arritur këto skenarë, është e nevojshme të ndiqni rrjedhat e Sigurimi i pajisjeve të dedikuara siç përshkruhet në dokumentacionin zyrtarNë këto skenarë, DPC merr rolin e pronarit të pajisjes. Si zhvillues, duhet të siguroheni që aplikacioni juaj të mund të funksionojë në modalitetin kiosk, pa butona standardë navigimi ose kryerjen e shumë detyrave njëkohësisht, dhe që ai t'i përgjigjet mirë rrëzimeve dhe rinisjeve të kontrolluara.
Hyrje e vetme (SSO) me skeda të personalizuara të Chrome
Në botën e biznesit, është shumë e zakonshme që përdoruesit të duhet të autentifikohen në disa aplikacione të ndryshme, dhe nëse përvoja nuk menaxhohet me kujdes, mund të përfundojë... duke përsëritur emrin e përdoruesit dhe fjalëkalimin vazhdimishtWebView tradicionalisht është përdorur për hyrje, por kjo zgjidhje ka disavantazhe të qarta.
Nga njëra anë, shumë implementime me WebView nuk ofrojnë një SSO e vërtetë, sepse çdo WebView menaxhon cookie-t dhe sesionin e vetNga ana tjetër, ekzistojnë rreziqe sigurie, pasi është e mundur të inspektohen cookie-t ose të injektohet JavaScript me qëllim të keq nëse ndonjë aplikacion ose SDK i palës së tretë sillet në mënyrë të papërshtatshme.
Alternativa e rekomanduar është të përfitoni nga Skedat e personalizuara, veçanërisht Skedat e Personalizuara të Chrome, të cilat kanë qenë të pranishme që nga Chrome 45.Këto skeda veprojnë si një pamje e integruar e shfletuesit të sistemit, me një kontekst të sigurt ku aplikacioni pritës nuk mund të përgjojë përmbajtjen.
Kur përdorni Skedat e Personalizuara për vërtetim, statusi i cookie-t në të gjithë shfletuesin, duke mundësuar hyrje të vetme në shumë aplikacionePërdoruesi hyn vetëm një herë, dhe pjesa tjetër e aplikacioneve mund të mbështetet në atë kontekst tashmë të autentifikuar, duke përmirësuar përdorshmërinë dhe duke zvogëluar vështirësitë.
Për të implementuar SSO me Custom Tabs, mund të përdorni AppAuth, një bibliotekë klientësh OAuth me burim të hapur e mbështetur nga grupi i punës OpenID ConnectKjo bibliotekë thjeshton integrimin me ofruesit e identitetit dhe trajton detajet e sigurisë dhe përputhshmërinë me skedat e personalizuara.
Testimi i aplikacioneve në mjedise të menaxhuara: Testimi i DPC-së, profilet dhe pajisjet
Pasi të keni shtuar mbështetje për profilet e punës, konfigurimet e menaxhuara dhe pajisjet e dedikuara, është koha për pjesën më pak tërheqëse, por më kritike: Testoni aplikacionin tuaj si në profilet e punës ashtu edhe në pajisjet me menaxhim të vërtetëKëtu hyn në lojë aplikacioni Test DPC.
Testi DPC është një Aplikacion i projektuar për zhvilluesit që simulon sjelljen e një DPC-je të ndërmarrjes në një mjedis testimiMe të, ju mund të vendosni politika EMM dhe vlera të konfigurimit të menaxhuar sikur një organizatë të po e menaxhonte pajisjen përmes konsolës së saj.
Për të testuar aplikacionin tuaj në një profil pune, rrjedha bazë e punës është Instaloni Test DPC, hapni opsionin e konfigurimit Test DPC në përzgjedhësin e Android dhe ndiqni udhëzimet për të përgatitur profilin e punës.Pastaj instaloni aplikacionin tuaj dhe kontrolloni se si sillet në atë profil me një distinktiv pune, duke verifikuar lejet, qëllimet, aksesin në të dhëna dhe sjellje të tjera të ndjeshme.
Nëse doni të simuloni një pajisje të menaxhuar plotësisht, duhet të Sigurohuni që terminali të mos ketë konfiguruar përdorues, profile pune ose llogari të tjera.Tjetra, instaloni Test DPC dhe ekzekutoni komandën e mëposhtme në adb:
shell adb dpm set-device-owner com.afwsamples.testdpc/.DeviceAdminReceiver
Pas përfundimit të këtij procesi, pajisja do të jetë nën kontrollin e plotë të Test DPC si pronar i pajisjesNga aty, mund ta testoni aplikacionin tuaj në një kontekst administrimi absolut, duke i kushtuar vëmendje të veçantë mënyrës se si aplikohen konfigurimet e menaxhuara, si reagojnë Intent-et e kufizuara dhe çfarë i ndodh aplikacionit në skenarët e bllokimit dhe politikat strikte.
Pasi ta keni validuar sjelljen në testet lokale, gjëja ideale për të bërë është të çoni një hap më tej dhe të bëni një testim nga fillimi në fund në një mjedis të vërtetë cloud, duke replikuar rrjedhën që do të ndiqte një klientKjo përfshin pasjen e një konsole testimi EMM, pretendimin për një domen të menaxhuar Google, lidhjen e tij me atë konsolë dhe publikimin e një versioni testimi të aplikacionit tuaj (me një ApplicationId të ndryshëm) në kanalin privat Google Play të atij domeni.
Nga konzola EMM do të jeni në gjendje të Konfiguroni pajisjet e punës, shpërndani aplikacionin, vendosni konfigurimet e menaxhuara dhe vendosni politikat e pajisjeveNë këtë mënyrë, ju verifikoni që gjithçka funksionon siç do të funksiononte në një vendosje prodhimi, nga regjistrimi fillestar deri te zbatimi i politikave të përparuara.
Udhëzues mësimi për Android: nga fillestarët tek të avancuarit
Përtej aspektit thjesht të biznesit, nëse doni të bëheni një zhvillues i mirë i Android-it, ju nevojitet një një rrugë e strukturuar mësimore që mbulon gjithçka, nga konceptet bazë deri te temat e avancuara dhe qëndroni të azhurnuar me Lajme teknologjike rreth telefonave celularë, aplikacioneve dhe kulturës dixhitaleNë këtë kuptim, udhëzuesit ose kurset që e ndajnë përmbajtjen në nivele - fillestar, i ndërmjetëm dhe i avancuar - janë shumë të dobishme.
Në fazën fillestare, fokusi është në Bazat e Android, Kotlin ose Java, cikli jetësor i aktivitetit, pamjet bazë dhe krijimi i paraqitjesShumë burime moderne tani janë 100% të përqendruara në Kotlin, por ende ka libra dhe materiale të shkëlqyera të bazuara në Java dhe mjedise si Eclipse që, megjithëse disi të vjetruara, janë ende të dobishme për të kuptuar evolucionin e platformës.
Ndërsa përparoni, është thelbësore të prezantoni tema të tilla si qëndrueshmëria e të dhënave, programimi i njëkohshëm, siguria, komunikimi në rrjet dhe testimiËshtë gjithashtu një ide e mirë të njiheni me Fragment, arkitekturat moderne dhe konceptet si modularizimi, në mënyrë që projektet tuaja të mos bëhen kaotike ndërsa rriten.
Në nivelin e avancuar, ato hyjnë në lojë Publikimi në Google Play, menaxhimi i versioneve, monetizimi, mbrojtja e aplikacioneve me pagesë (p.sh., me LVL) dhe mekanizmat e përditësimitTema të tilla si AppWidgets, qasja në gjeolokacion, optimizimi i performancës, mbështetja për versione të shumta të Android dhe përshtatja me tableta dhe pajisje të palosshme gjithashtu trajtohen zakonisht.
Disa tekste shkollore klasike mbulojnë Nga përgatitja e mjedisit të zhvillimit, krijimi i aplikacionit të parë, dizajnimi i ndërfaqes së përdoruesit, deri te vendosja përfundimtare në prodhimSi një vlerë e shtuar, ato zakonisht shoqërohen me projekte shembullore të shkarkueshme që ilustrojnë praktikisht gjithçka që shpjegohet në tekst.
Arkitektura moderne e aplikacioneve Android: një themel për projekte serioze
Nëse doni që aplikacioni juaj të mos shkatërrohet sapo të rritet pak, ju nevojitet një Një arkitekturë aplikacioni e projektuar mirë, e aftë të shkallëzohet dhe përshtatet me celularë, tableta, pajisje të palosshme, ChromeOS, makina dhe pajisje XR.Ideja është të minimizohet varësia nga komponentët e kornizës dhe të sigurohet që kodi të jetë i lehtë për t'u mirëmbajtur dhe testuar.
Një aplikacion tipik Android përbëhet nga komponentë të shumtë të deklaruar në manifest: shërbimet, ofruesit e përmbajtjes, marrësit e transmetimit dhe aktivitetetHistorikisht, ndërfaqja e përdoruesit ishte e organizuar me disa aktivitete, por rekomandimi aktual është të përdoret një arkitekturë e aktivitet unik me ekrane të bazuara në fragmente ose destinacione Jetpack Compose.
Meqenëse aplikacioni juaj mund të funksionojë në pajisje shumë të ndryshme, nuk mund të supozoni as një orientim i fiksuar dhe as një madhësi e vetme e ekranitNdryshimet e konfigurimit (rrotacioni, ndryshimet e dritareve në ChromeOS, palosja e një pajisjeje të palosshme) kërkojnë rikompozimin e ndërfaqes dhe mund të shkaktojnë rikrijimin e komponentëve, kështu që çdo gjendje e rëndësishme duhet të mbahet jashtë Aktiviteteve dhe Fragmenteve.
Për më tepër, Android është një mjedis me burime të kufizuara ku sistemi Mund të ndërpresë proceset e aplikacioneve në sfond për të liruar memorienGjithashtu mund të nisë komponentë në një mënyrë të çrregullt dhe t'i shkatërrojë ato pa paralajmërim. Prandaj edhe rekomandimi klasik: mos i ruani të dhënat e gjendjes ose të biznesit në Aktivitete, Shërbime ose Marrës Transmetimi, sepse ato janë të përkohshme nga natyra.
Parimi udhëheqës është Ndarja e përgjegjësive: UI është përgjegjës për shfaqjen e të dhënave dhe reagimin ndaj ngjarjeve, ndërsa logjika e biznesit dhe përpunimi i të dhënave ndodhen në shtresa të tjera.Kështu, kur një komponent i ndërfaqes rikrijohet, gjendja vazhdon në sajë të ViewModels, depove dhe burimeve të të dhënave të organizuara mirë.
Shtresat e arkitekturës: UI, të dhënat dhe domeni
Arkitektura e rekomanduar dallon të paktën dy shtresa: Shtresa e UI (prezantimit) dhe shtresa e të dhënaveOpsionalisht, mund të shtohet një shtresë e tretë domeni për të përfshirë logjikën komplekse ose të ripërdorshme të biznesit midis ViewModels të ndryshëm.
Shtresa e UI është përgjegjëse për shfaq të dhënat në ekran dhe reagon ndaj ndryshimeveKjo ndodh ose nëpërmjet veprimeve të përdoruesit ose nëpërmjet të dhënave të jashtme, siç janë përgjigjet e rrjetit. Këtu hyjnë në lojë elementët vizualë (pamje ose materiale të kompozueshme nga Jetpack Compose) dhe përmbajtësit e gjendjes (ViewModel), të cilët ruajnë dhe ekspozojnë gjendjen e ndërfaqes.
Në ndërfaqet adaptive, ViewModels zakonisht janë ekspozoni një gjendje që tashmë merr parasysh klasën e madhësisë së dritaresduke përdorur programe të tilla si currentWindowAdaptiveInfo(). Komponentët si NavigationSuiteScaffold mund të mbështeten në këtë informacion për të kaluar automatikisht midis NavigationBar, NavigationRail ose NavigationDrawer në varësi të hapësirës së disponueshme.
Shtresa e të dhënave përqendron logjika e biznesit dhe rregullat që përcaktojnë se si krijohen, ruhen dhe modifikohen të dhënatBazohet në depo që grupojnë dhe abstraktojnë një ose më shumë burime të dhënash: baza të dhënash lokale, shërbime rrjeti, skedarë, etj. Çdo lloj informacioni (filma, pagesa, përdorues, etj.) zakonisht ka depon e vet përgjegjëse për ekspozimin e të dhënave, centralizimin e ndryshimeve dhe zgjidhjen e konflikteve.
Burimet e të dhënave janë klasat që Ata komunikojnë drejtpërdrejt me sistemin ose me shërbime të jashtme: pyetje SQL, qasje në skedarë, kërkesa HTTP, etj.Pjesa tjetër e aplikacionit nuk duhet të varet nga implementimi i tij specifik, por vetëm nga ndërfaqet e ekspozuara nga depoja.
Ndërsa kompleksiteti rritet, është e dobishme të prezantohet një shtresë domeni që përbëhet nga raste përdorimi ose bashkëveprues, secili i dedikuar një funksionaliteti specifikPër shembull, një GetTimeZoneUseCase që kthen zonën kohore të përshtatshme për të ndërtuar mesazhe të personalizuara, të ripërdorshme nga ViewModels të shumta.
Modelet e të dhënave, SSOT dhe rrjedha unidireksionale e të dhënave
Një tjetër parim kyç është se ndërfaqja duhet të ushqehen me modele të dhënash, mundësisht ato të përhershmeKëto modele përfaqësojnë gjendjen e aplikacionit dhe janë plotësisht të pavarura nga ndërfaqja e përdoruesit dhe cikli jetësor i komponentëve të kornizës. Në këtë mënyrë, ato i mbijetojnë rikrijimeve të Aktiviteteve dhe Fragmenteve dhe zhduken vetëm kur sistemi e përfundon procesin.
Lidhur me këtë, ia vlen të zbatohet modeli i burim i vetëm i së vërtetës (SSOT)Çdo lloj i rëndësishëm i të dhënave ka një pronar të vetëm që mund ta modifikojë atë; shtresat e tjera e vëzhgojnë atë vetëm përmes llojeve të pandryshueshme. Mutacionet kryhen përmes funksioneve të përcaktuara mirë ose përmes ngjarjeve që arrijnë atë burim të së vërtetës.
SSOT zakonisht kombinohet me rrjedha unidireksionale e të dhënave (UDF), në të cilën gjendja rrjedh nga lart poshtë dhe ngjarjet rrjedhin nga poshtë lartNë Android, kjo do të thotë që të dhënat e aplikacionit udhëtojnë nga burimet (rrjeti, baza e të dhënave) në ndërfaqen e përdoruesit, ndërsa veprimet e përdoruesit transformohen në ngjarje që udhëtojnë nga ndërfaqja e përdoruesit në domenin ose shtresën e të dhënave, ku gjendja përditësohet.
Ndjekja e këtij modeli përmirëson Konsistenca e gjendjes zvogëlon gabimet, lehtëson arsyetimin rreth sjelljes së aplikacionit dhe thjeshton debugging-un.Të kesh një komponent të vetëm që kontrollon se si ndryshojnë të dhënat e bën më të lehtë përcaktimin e burimit të një defekti.
Injektimi i varësisë dhe praktikat më të mira të përgjithshme
Për të mundësuar që klasat e ndryshme të aplikacionit të bashkëpunojnë pa lidhje të panevojshme, rekomandohet të përdorni një model menaxhimi varësie siç është injektimi i varësisë (DI) ose një lokalizues shërbimiNë Android, zgjidhja kryesore është Hilt, i cili automatizon ndërtimin e objekteve, kontrollon për varësi në kohën e kompajlimit dhe krijon kontejnerë specifikë për komponentët e framework-ut.
Ideja është që klasat Thuaj çfarë të nevojitet, por mos e merr përsipër ndërtimin e saj.Kjo ju lejon të kaloni lehtësisht nga implementimi i drejtpërdrejtë në një version testimi, ose të rregulloni sjelljet pa rishkruar gjysmën e projektit. Për më tepër, zvogëlon dyfishimin dhe përshkruan qartë se si çdo pjesë lidhet në një vend.
Si rregulla të përgjithshme të arkitekturës, këshillohet që Pikat hyrëse (aktivitetet, shërbimet, marrësit) nuk janë burime të dhënashNë vend të kësaj, ata janë thjesht koordinatorë që kërkojnë informacionin e nevojshëm nga depoja ose rasti i përdorimit. Gjithashtu rekomandohet të minimizohen varësitë nga klasat Android jashtë komponentëve të UI për të lehtësuar testimin.
Është e rëndësishme të përcaktohet Kufij të qartë të përgjegjësisë midis moduleve, duke shmangur përzierjen e kodit të rrjetit, ruajtjen në memorje, lidhjen e pamjeve dhe logjikën e biznesit në të njëjtën klasë.Çdo modul duhet të ekspozojë vetëm atë që është e nevojshme, pa rrugë të shkurtra që zbulojnë detaje të brendshme të zbatimit dhe që mund të bëhen borxh teknik në të ardhmen.
Një tjetër këshillë që përsëritet është Mos e shpikni rrotën nga e para: mbështetuni te bibliotekat Jetpack dhe zgjidhjet e provuara për detyra standarde. (navigimi, vazhdimësia, faqosja, etj.). Rezervoni kohën tuaj për atë që e bën aplikacionin tuaj të veçantë, në vend që të rishkruani të njëjtin kod infrastrukture vazhdimisht.
Kur hartoni UI-në, këshillohet të zgjidhni komponentë të ripërdorshëm dhe të kompozueshëm që mund të riorganizohen për t'u përshtatur me madhësi dhe orientime të ndryshmeGjithashtu duhet të siguroheni që ta ruani gjendjen e ndërfaqes gjatë ndryshimeve të konfigurimit, veçanërisht në pajisjet e palosshme dhe ekranet e mëdha ku ndryshimi i madhësisë është i shpeshtë.
Lidhur me paralelizmin, secili lloj duhet të jesh përgjegjës për kryerjen e detyrave të tua të kushtueshme në afatin e duhur kohorPër shembull, përmes korutinave dhe Flows. Rregulli i artë është që thirrjet API duhet të jenë të sigurta nga fijet kryesore, duke e zhvendosur ngarkesën e rëndë në fijet e sfondit.
Në fund të fundit, ia vlen ta ruani sa më shumë të dhëna relevante të jetë e mundur në nivel lokal, në një mënyrë të azhurnuarNë këtë mënyrë, përdoruesit tuaj mund të vazhdojnë ta përdorin aplikacionin edhe pa lidhje interneti ose me mbulim të dobët, diçka që është veçanërisht e zakonshme në zonat e mbipopulluara ose me rrjete me cilësi të ulët.
Të kesh një arkitekturë të mirë sjell avantazhe shumë të prekshme: Përmirëson mirëmbajtjen, e bën më të lehtë për ekipe të shumta të punojnë në të njëjtën bazë kodi, përshpejton integrimin e zhvilluesve të rinj dhe e bën aplikacionin më të lehtë për t'u testuar.E gjithë kjo përkthehet në më pak gabime, përditësime më të shpejta dhe një përvojë më të qëndrueshme për përdoruesin përfundimtar.
Të marra së bashku, zotërimi i funksionaliteteve të ndërmarrjeve të Android, të kuptuarit se si funksionojnë profilet e punës dhe pajisjet e dedikuara, zbatimi i SSO-së së sigurt me skeda të personalizuara, aplikimi i konfigurimeve të menaxhuara dhe miratimi i një arkitekture moderne me ndarje shtresash, SSOT dhe DI, është ajo që ju lejon të... duke kaluar nga krijimi i aplikacioneve të thjeshta në ndërtimin e zgjidhjeve profesionale dhe të fuqishme Android, të gatshme për çdo mjedis korporativ ose konsumatori..
