Kako podesiti pametne telefone i računare. Informativni portal
  • Dom
  • Windows 10
  • Način rada s više prozora za android 4.1. Kako koristiti način rada s više prozora na Androidu

Način rada s više prozora za android 4.1. Kako koristiti način rada s više prozora na Androidu

Svako ko je radio u multi-window modu na Android uređaju može potvrditi da je to vrlo zgodno u određenim situacijama. Jednostavan primjer: čitanje e-knjige s elektronskim rječnikom. Pogotovo na pametnom telefonu ili tabletu s prilično velikim ekranom.
Ako korisnik mora da bira između dvije aplikacije koje su slične u gotovo svakom pogledu, ali se razlikuju po podršci za istovremeni rad s više prozora, ne čudi što će izabrati onu koja pruža takvu podršku.

U ovom članku ćete naučiti o načinu rada s više prozora u Androidu i kako koristiti ovu funkciju prilikom izrade vlastitih aplikacija.

Pregled

Istovremeni rad sa više prozora u Androidu je zanimljiva karakteristika koja može razlikovati vašu aplikaciju od mnogih drugih, dati joj dodatnu konkurentsku prednost. Mnogi OEM i ODM-ovi, kao što su Samsung, Ramos i Huawei, prilagođavaju jezgro Android sistema. Konkretno, uvode podršku za multi-window mod. To čine kako bi povećali atraktivnost svojih pametnih telefona i tableta, kako bi ih razlikovali od većine uređaja koji ne podržavaju takvu funkciju.


Scenariji za korištenje načina rada s više prozora

Preliminarne informacije

U junu 2012. predstavljen je Kamen temeljac je prva platforma otvorenog koda za multitasking na Androidu. U avgustu 2012. Samsung je objavio prvi uređaj koji podržava rad u više prozora. Od 2013. do danas možete vidjeti eksplozivan rast rješenja za podršku istovremenog rada s više prozora u Androidu.

U maju 2015. objavljen je Android M Developer Preview (danas, u julu, Preview 2 je već dostupan). Zvanično izdanje Androida M (6.0) očekuje se na jesen 2015. godine. Među ostalim inovacijama, Android M Preview 2 ističe se po tome što podržava način rada sa više prozora.


Razvoj rješenja za više zadataka za Android

Postoje dva pristupa radu sa više prozora: plutajući prozori i usidreni prozori. Među glavnim karakteristikama rada u režimima sa više prozora, može se uočiti otvaranje i zatvaranje prozora (open/ close), promena njihove veličine (resize) i relativne pozicije (swap). Otvaranjem ili zatvaranjem prozora, mi, odnosno, omogućavamo ili onemogućavamo višeprozorski način rada. Funkcija promjene veličine vam omogućava da prilagodite veličinu prozora. Premještanje prozora je radnja koja vam omogućava da ih zamijenite.


Načini rada s više prozora

U 2013. godini na tržištu su se pojavila mnoga rješenja koja su dizajnirana za rad s više prozora. Razvili su ih OEM-ovi i ODM-ovi, ISV-ovi i zajednica otvorenog koda. U tabeli ispod možete pronaći poređenje različitih Android tehnologija sa više prozora.

Proizvod Kamen temeljac Isticati se Xposed Tieto
Opis
Okvir za organizaciju multitaskinga u Android OS-u
Biblioteka otvorenog koda koja se može koristiti za pravljenje aplikacija sa plutajućim prozorima
Aplikacija sa više prozora koja podržava usidrene prozore
Projekat ima za cilj stvaranje radnog okruženja koje podseća na rad na desktop računaru
Podrška za otvaranje, zatvaranje prozora, promjenu veličine, cijeli ekran
Da
Da
Da
Da
Prozorski stil
Zakačen
plutajući
Zakačen
Fiksno i plutajuće
Modifikacija koda
Na nivou Android platforme
Na nivou aplikacije
Na nivou Android platforme
Na nivou Android platforme
Podrška aplikacijama
Sve aplikacije su podržane, međutim SurfaceView nije dinamički konfigurisan.
Neke prateće aplikacije. Na primjer, kalkulator.
Kompatibilnost i stabilnost rješenja treba poboljšati.
Podržava sve aplikacije.
Android verzija
Android 4.1. – Android 4.4.
Android 4.1. – Android 4.4.
Android 4.4.
Android 4.4
Službena stranica
Cry
Cry
Cry
Cry

Arhitektura softvera

Kôd Android platforme može se modificirati kako bi podržao dodatne funkcije. Arhitektura Android OS se sastoji od nekoliko slojeva.

U slučaju Androida 4.2 i Android 4.3., ljuska (pokretač) i druge aplikacije se postavljaju na isti stog kada se pokrenu, nazvan "glavni stek" ("glavni stek"). Kao što znate, način rada s više prozora zahtijeva više gomila za smještaj više prozora. Kao rezultat toga, moramo modifikovati sistemsku klasu ActivityManagerService dodavanjem interfejsa za kreiranje i upravljanje stekom. Da biste modificirali klasu platforme WIndowManagerService, koja vam omogućava da upravljate grafičkim prikazima aplikacije, trebate modificirati InputManager. Ovo je neophodno kako bi mogao da preusmeri dodirne događaje na odgovarajuće prozore.

Sa izdavanjem Androida 4.4 i Androida 5.0, pristup upravljanju stekom se značajno promijenio. Shell i druge aplikacije mogu raditi na različitim stekovima. Podrška za više stekova i mogućnost upravljanja njima su dodani sistemu. Na slici ispod prikazane su razlike u radu sa stekom u različitim verzijama Androida.


Poređenje rada sa stekom u Androidu 4.3 i Androidu 4.4

Sada se fokusirajmo na Android 5 (Lollipop). Android OS koristi mehanizme povratnog poziva za izvršavanje funkcija interfejsa aktivnosti. Međutim, kontrolna funkcija je implementirana na nivou platforme. Stoga ćemo sada pogledati dvije važne klase: ActivityManagerService i WindowManagerService.


Struktura softvera platforme Lollipop

Upravljanje aktivnošću u Lollipop-u

Budući da mogućnost rada u načinu rada s više prozora ovisi o steku, sljedeće pokazuje kako možete kreirati stog i kako možete pokrenuti aktivnost u ovom stogu. U Lollipop-u su sljedeće funkcije dodane sučelju IactivityManager.java:

Jednom pokrenut, SystemServer proces poziva usluge upravitelja aktivnosti i usluge upravljanja prozorima. Da bismo posmatrali ovaj proces, možemo dodati komande za izbacivanje izuzetka vremena izvršavanja (RuntimeException) na odgovarajuća mesta.


Proces kreiranja steka u Lollipop-u

Sada da vidimo kako pokrenuti aktivnost na steku:


Pokretanje aktivnosti na steku

U Lollipop-u su sljedeće naredbe dodane u pomoćni program ADB (Android Debug Bridge):

Upravljanje prozorima u Lollipop-u

WindowManagerService je centralni dio sistema za upravljanje prozorima. Njegova funkcionalnost uključuje dispečiranje ulaznih događaja, upravljanje lokacijom objekata na ekranu i površinama na kojima se prikazuju grafički elementi.


Uloga WindowsManagerService u Android grafička arhitektura

Problemi sa više prozora

Kada radite u režimu više prozora, dostupna je promjena veličine prozora. Postoje primjeri kada se veličina prozora koji prikazuje animaciju igre ne može promijeniti. Glavni razlog za to je taj što podsistem Android SurfaceFlinger ne može dinamički promijeniti veličinu prikazane slike.


Igre koje koriste SurfaceFlinger ne mogu dinamički promijeniti veličinu prozora

Drugi problem je taj što se neke aplikacije u višeprozorskom režimu prikazuju pogrešno. Na donjoj slici možete vidjeti da se kalkulator s više prozora ne prikazuje ispravno. Sve se radi o izgledu aplikacije, koja nije dizajnirana za takve uslove korišćenja.


Kalkulator sa rasporedom nije dizajniran za rad u više prozora

Podrška za više prozora u Androidu M

Android M Developer Preview 2 može se pokrenuti na Nexus 5, 6, 9 i Nexus Playeru. Ako nemate takav uređaj, ili ne želite da instalirate OS koji je u statusu Preview na njemu, možete se upoznati sa Android M pomoću emulatora u Android Studiju. Konkretno, sada nas zanimaju standardni alati za rad u višeprozorskom načinu rada.

Da biste vidjeli ovaj način rada, dovoljno je kreirati novi virtuelni uređaj pomoću alata AVD Manager, a pritom odabrati jedan od dostupnih sa Level MNC API-jem kao sliku sistema. U našem slučaju, to je bila x86_64 slika. Zatim morate pokrenuti emulator, otići na odjeljak Postavke programera i tamo omogućiti opciju Multiwindow. Ako ne možete pronaći ovu opciju, pogledajte ovaj vodič

Sada najzanimljivije. Za početak, možete pokrenuti nekoliko aplikacija, sve će biti kao i obično. Ali ako kliknete na dugme za pozivanje liste nedavno otvorenih aplikacija, nova ikona će se pojaviti u naslovima sličica prozora. Podrazumevano, ovo je okvir koji označava da aplikacija radi u režimu celog ekrana. Klikom na ovu ikonu otvorit će se izbornik za odabir izgleda prozora.


Izbornik izgleda prozora u režimu više prozora


Način rada s više prozora u Androidu M

Još uvijek nije poznato da li će multi-windows biti dostupan u službenom izdanju Androida M. Međutim, na primjer, sistemski kalkulator u ovom načinu rada se osjeća dobro. Kao rezultat toga, imamo dobar razlog vjerovati da nije daleko dan kada će se prilagođavanje aplikacija za višeprozorni način pretvoriti iz konkurentske prednosti u hitnu potrebu.

Ako želite da svoje aplikacije za starije verzije Androida opremite podrškom za više prozora, vrijeme je da se okrenete rješenjima trećih strana o kojima smo gore govorili. Na primjer, u Cornerstone.

Primjer: Kamen temeljac

Onskreen je kreirao Cornerstone, prvi okvir sa više prozora za Android. Dizajniran je za uređaje sa velikim ekranima i tablete. Izvorni kod se može preuzeti sa Github-a. Podržava Android verzije 4.1 i 4.2. Za kasnije verzije ovog OS-a, Cornerstone još nije objavljen. Međutim, možete analizirati izvorni kod za Android 4.2 kako biste saznali tehničke detalje o tome kako sistem radi.


Kornerstone modifikacije u Android Jelly Bean-u

Rezultati

Mnogi mobilni uređaji koji koriste Android OS koriste Intel® procesore. Kako programeri mogu poboljšati korisničko iskustvo svojih aplikacija? Kako učiniti aplikacije konkurentnijima? Ova pitanja nas vode da stalno poboljšavamo proizvode na uređajima Intel Architecture (IA). Podrška za više prozora je dobar primjer korisne funkcije koja aplikacijama daje konkurentsku prednost. Ovaj zgodan način rada s više prozora daje korisniku mogućnost obavljanja nekoliko zadataka u isto vrijeme. Na primjer, pogledajte video i napišite recenziju svojim prijateljima o tome šta gledaju. Na primjer, igrati igru ​​i čitati njene recenzije. Danas više uređaja podržava rad u više prozora. Na primjer, ovo su Ramos i12, Teclast x98 i Cube i7 tableti, koji koriste Remix OS.


Način rada s više prozora na IA uređajima

Kao što već znamo, verzija Android Nougat-a ima puno funkcija koje mogu učiniti korisničko iskustvo što lakšim. Najznačajniji detalji najnovijeg ažuriranja za Android uključuju poboljšanu traku s obavijestima, optimizacije prijenosa podataka i uštede energije, te podršku za uređaje virtuelne stvarnosti. Jedan od najvažnijih aspekata inovacije, koja je osvojila mnoge obožavatelje (uključujući i nas), je skup opcija za upravljanje zadacima. Zahvaljujući najnovijem ažuriranju za Android 7.0 Nougat, sada možete koristiti dvije aplikacije u isto vrijeme u načinu rada s više prozora.

Bilješka

Želimo da vas obavijestimo da nisu sve aplikacije kreirane jednake,
i iz tog razloga, otkrit ćete da nisu svi kompatibilni s načinom rada s više prozora. Međutim, ne treba da brinete - to nije vaša greška, već greška programera, jer će im trebati još vremena da kreiraju sledeće ažuriranje pre nego što druge aplikacije mogu da rade u gore navedenom režimu. Danas postoji način da se zaobiđe ovaj problem. Možete pokrenuti bilo koju aplikaciju u načinu rada s više prozora pod "Alati za programere" u najnovijoj verziji Google-ovog mobilnog operativnog sistema.

Pokretanje bilo koje aplikacije u načinu rada s više prozora u Android Nougatu

Prvo morate aktivirati stavku "Alati za programere" na svom telefonu. Da biste to učinili, idite na šemu "Postavke > Alati za programere > O uređaju". Zatim kliknite nekoliko puta na broj verzije dok ne vidite poruku da ste postali programer.

Sada se ponovo vratite na meni postavki i otvorite Developer Tools. Skrolujte skroz do dna stranice i omogućite opciju "Prisilno mijenjanje veličine operacija". Kada to učinite, morat ćete ponovo pokrenuti uređaj da biste aktivirali ovu opciju. Nakon toga, čak i one aplikacije koje nisu bile kompatibilne s ažuriranjem za Nougat moći će raditi u više prozora.

I na kraju, da biste koristili način rada s više prozora, otvorite dvije aplikacije po svom izboru, a zatim pritisnite i držite tipku za više zadataka. Obje ove aplikacije će se sada otvoriti u više prozora.

Mislite li da će način rada s više prozora biti koristan za vaše potrebe multitaskinga? Ili ćete se za sada držati tradicionalnijeg pristupa jednom zadatku? Podijelite svoje mišljenje s nama u komentarima.

Pažnja! Članak koristi snimke ekrana i opcije iz operativnog sistema Android 7.1. Iako bi većina opisanih elemenata trebala biti prisutna u drugim verzijama Androida, autor to ne jamči.

Kako omogućiti opcije za programere

Unatoč činjenici da će se ovaj članak fokusirati na postavke za programere, nemojte se bojati ovog imena. Neke od opcija predstavljenih u ovom odjeljku također će biti korisne običnim korisnicima. Standardno se ne prikazuju u postavkama, ali to je lako popraviti.

  1. Otvorite Android postavke i idite na odjeljak O telefonu.
  2. Skrolujte do samog dna. Pronađite red "Broj izgradnje".
  3. Uradite sedam brzih dodira za redom na ovom elementu. Kao rezultat, trebalo bi da se prikaže obaveštenje da ste sada programer, a odgovarajući odeljak će se pojaviti u meniju postavki.

Hajde da se sada upoznamo sa nekim od mogućnosti koje su nam se otvorile.

Neki programeri posebno onemogućuju mogućnost instaliranja na SD karticu u svojim aplikacijama. Pomoću prekidača "Dozvoli spremanje na eksterne diskove" ovo možete dozvoliti bez obzira na želju programera.

Imajte na umu da programer može imati dobar razlog da zabrani instalaciju na vanjskoj kartici. Neki programi su povezani na određenu lokaciju i neće raditi ako nisu instalirani tamo gdje je programer namjeravao. Stoga ovu funkciju treba koristiti s oprezom.

Način rada s više prozora je karakteristika najnovijih verzija Googleovih operativnih sistema. Međutim, da bi ova funkcija radila, nije potrebna samo ispravna verzija Androida, već i podrška u samim aplikacijama, o čemu se, nažalost, nisu pobrinuli svi programeri.

Koristeći opciju "Promijeni veličinu u načinu rada s više prozora", možete koristiti bilo koju aplikaciju u ovom načinu rada.

Pametni telefoni obično sami isključuju ekran tokom neaktivnosti radi uštede energije baterije. Međutim, u nekim slučajevima ova funkcija nije potrebna. Na primjer, ako želite da koristite stari pametni telefon kao stoni sat ili u automobilu kao navigator.

Opcija "Ne gasi ekran" omogućiće pametnom telefonu da ostane u aktivnom režimu sve vreme dok je povezan na punjač.

Ovo je jedna od najkorisnijih opcija koja vam omogućava da postignete značajno vizualno ubrzanje Androida. Činjenica je da neki proizvođači, u potrazi za wow-efektima, previše preopterećuju operativni sistem prekrasnom animacijom.

U ovom odjeljku opcija za programera, možete postaviti vrijeme za njihovo prikazivanje sami ili ih potpuno onemogućiti. Kao rezultat toga, činiće se da je sistem upravo počeo da leti.

Ako vaš uređaj koristi AMOLED ekran, broj prikazanih boja je zaista važan za uštedu baterije. Da biste još više iskoristili preostalo punjenje, jednostavno aktivirajte monokromatski način rada. Ova opcija je također skrivena u postavkama programera i zove se "Simuliraj anomaliju".

A koje korisne opcije za programere koristite?

Hidden u Androidu 6.0 je eksperimentalna opcija koja vam omogućava da koristite način rada s više prozora. Aktiviranje je relativno teško, ali ako sve učinite kako treba, s tim ne bi trebalo biti poteškoća. Za razliku od slične funkcije na Samsung pametnim telefonima, radi sa svim aplikacijama.

Da bi se opcija više prozora pojavila na Androidu 6.0, potrebno je samo urediti datoteku build.prop, ukazujući da koristite userdebug build, a ne user. Ovo se može učiniti pomoću računara i prilagođenog oporavka, a ako je uređaj rootan, pomoću običnog uređivača teksta.

Prvi način

1. Instalirajte prilagođeni oporavak na svoj uređaj (na primjer, TWRP). Da biste to učinili, preuzmite i instalirajte ADB sa Android SDK-a. Zatim preuzmite sliku za oporavak za svoj uređaj, preimenujte je u twrp.img i stavite ADB folder.

2. Povežite svoj pametni telefon sa računarom pomoću USB kabla, otvorite komandnu liniju i pokrenite tri komande:

adb reboot bootloader
fastboot flash recovery twrp.img
fastboot ponovno pokretanje

3. Isključite svoj pametni telefon i uđite u oporavak pritiskom na određenu kombinaciju tipki (obično tipka za napajanje i tipke za pojačavanje i smanjivanje jačine zvuka).

4. U oporavku, izaberite odeljak Montira i stavite krst ispred Sistema.

5. Povežite pametni telefon sa računarom kablom i pokrenite sledeću komandu na računaru u komandnoj liniji:

adb pull /system/build.prop

6. Datoteka build.prop će biti preuzeta na računar. Otvorite ga u notepad-u i zamijenite redak "ro.build.type=user" sa "ro.build.type=userdebug"



7. Preuzmite datoteku build.prop nazad na svoj pametni telefon upisivanjem sljedeće komande u komandnu liniju:

Adb push build.prop /system/

8. Postavite još tri naredbe koje su potrebne tako da aplikacije trećih strana ne mogu mijenjati build.prop:

adb shell
cd sistem
chmod 644 build.prop

9. Ponovo pokrenite pametni telefon i aktivirajte više prozora u opcijama programera.

Drugi način

Na pametnim telefonima sa root pristupom, uređivanje build.prop datoteke je mnogo lakše. Ovo se može uraditi sa posebnom aplikacijom Build Prop Editor ili sa uređivačem teksta ugrađenim u fajl menadžer kao što je Root Explorer ili X-Plore. Fajl se nalazi na /system/build.prop, iu njemu trebate zamijeniti red "ro.build.type=user" sa "ro.build.type=userdebug".

Kako aktivirati više prozora?

1. Idite na postavke sistema, idite na "O uređaju" i nekoliko puta dodirnite broj verzije Androida.

2. Odjeljak za programere će se pojaviti u postavkama. Uđite u njega - vidjet ćete prekidač koji vam omogućava da aktivirate više prozora.

3. Otvorite ekran za više zadataka dugim pritiskom na dugme za početak (ili virtuelno dugme). Vidjet ćete novu ikonu na sličicama stranice aplikacije. Nakon što kliknete na njega, sistem će od vas zatražiti da odaberete lokaciju aplikacije: na polovini, jednoj četvrtini ekrana ili na cijelom ekranu. Kada je otvoreno više aplikacija, njihove proporcije prozora se mogu promijeniti.

Najvjerovatnije će Google u budućnosti otvoriti pristup ovoj Android funkciji svim korisnicima. Mislite li da je to potrebno pametnim telefonima i tabletima ili je potpuno beskorisno?

Android N dodaje podršku za prikazivanje više aplikacija u isto vrijeme. Na mobilnim uređajima, dvije aplikacije se mogu pokrenuti jedna pored druge ili jedna iznad druge u načinu rada podijeljeni ekran. Na televizorima, aplikacije mogu koristiti "slika u slici" za reprodukciju videa dok korisnici rade na drugoj aplikaciji.

Ako gradite aplikaciju koristeći N Preview SDK, možete odrediti kako će se ponašati u načinu rada s više prozora. Na primjer, možete postaviti minimalnu dozvoljenu veličinu za prozor aplikacije. Također možete onemogućiti način rada s više prozora za aplikaciju tako da se pojavljuje samo na cijelom ekranu.

Pregled

Na Androidu N, više aplikacija može biti na ekranu u isto vrijeme. Na primjer, korisnik može podijeliti ekran da vidi web stranicu s lijeve strane i napiše e-poruku s desne strane. Korisničko iskustvo se razlikuje ovisno o uređaju.

  • Na Android N mobilnim uređajima dostupan je način rada podijeljenog ekrana. U ovom načinu rada, dvije aplikacije se prikazuju jedna pored druge ili jedna iznad druge. Korisnik može povući podijeljenu liniju da poveća prozor jedne aplikacije i smanji prozor druge.
  • Na Androidu N Nexus Player za aplikacije će biti dostupan, što će omogućiti aplikaciji da prikazuje sadržaj dok korisnik pregledava ili komunicira s drugim aplikacijama.
  • Proizvođači većih uređaja mogu omogućiti režim slobodnog oblika, gdje korisnik može promijeniti veličinu svakog prozora na bilo koji način. U ovom slučaju, pored režima podeljenog ekrana, ovaj režim će biti dostupan i na uređaju.

Rice. jedan. Dvije aplikacije se prikazuju jedna pored druge u načinu podijeljenog ekrana.

Korisnik se može prebaciti u višeprozorski način rada na sljedeće načine.

  • Ako korisnik otvori i dugo pritisne naziv aktivnosti, može se povući na odabrani dio ekrana i prebaciti u višeprozorski način rada.
  • Ako korisnik dugo pritisne dugme Browse, uređaj će prebaciti trenutnu operaciju u režim sa više prozora i otvoriti ekran za pregled, gde korisnik može da izabere drugu operaciju za zajednički prikaz.

U ovom načinu rada, u bilo kojem trenutku je aktivna samo posljednja operacija s kojom je korisnik bio u interakciji. Takva operacija se razmatra topmost. Sve ostale operacije su obustavljene, čak i ako su prikazane. Međutim, sistem daje suspendovanim, ali vidljivim operacijama veći prioritet od nevidljivih. Ako korisnik stupi u interakciju s jednom od obustavljenih aktivnosti, ona se nastavlja, a prethodna najviša aktivnost se obustavlja.

Bilješka. U načinu rada s više prozora, aplikacija može biti suspendirana i još uvijek vidljiva korisniku. Aplikacija će možda morati da nastavi sa radom čak i ako je suspendovana. Na primjer, vidljiva pauzirana aplikacija koja reproducira videozapis i dalje će ga prikazivati. Zato mi ne Preporučujemo da pauzirate reprodukciju u rukovaocima takvih aplikacija. Umjesto toga, trebali biste pauzirati video u i nastaviti reprodukciju u .

Ako korisnik dovede aplikaciju u višeprozorski način rada, sistem obavještava rad o promjeni konfiguracije, kako je navedeno u dokumentu. Zapravo, ova promjena ima isti učinak na životni ciklus aktivnosti kao i obavještavanje aplikacije od strane sistema o prelasku uređaja iz portretne u pejzažnu orijentaciju, samo se mijenjaju veličine ekrana, a ne i orijentacija. Kao što je opisano u dokumentu, aktivnost može sama podnijeti promjenu konfiguracije ili može dozvoliti sistemu da izbriše prozor aktivnosti i ponovo ga kreira s novim dimenzijama.

Ako korisnik poveća jednu od strana prozora, sistem mijenja veličinu operativnog prozora prema radnji korisnika i primjenjuje ga po potrebi. Ako aplikacija nema vremena da nacrta nove oblasti, sistem ih privremeno popunjava bojom, određenim atributom ili podrazumevanim atributom stila windowBackgroundFallback.

Konfiguriranje aplikacije za način rada s više prozora

Ako je vaša aplikacija za Android N, možete odrediti kako (i ako) operacije vaše aplikacije podržavaju više prozora. Kontrolni atributi veličine i izgleda su postavljeni u manifestu. Postavke atributa korijenske aktivnosti primjenjuju se na sve aktivnosti u njenom skupu zadataka.

Bilješka. Ako je aplikacija za više orijentacije napravljena sa SDK-om ranije od Androida N, a korisnik pokrene aplikaciju u načinu rada s više prozora, sistem će prisiliti aplikaciju da promijeni veličinu. Sistem prikazuje dijaloški okvir upozorenja da bi aplikacija mogla raditi na neočekivan način. Sistem ne mijenja veličinu prozora za aplikacije sa fiksnom orijentacijom. Ako korisnik pokuša otvoriti takvu aplikaciju u višeprozorskom načinu, ona će zauzeti cijeli ekran.

android:resizeableActivity

ili manifest da omogućite ili onemogućite način rada s više prozora:

Android:resizeableActivity=["true" | "lažno"]

Ako je ovaj atribut postavljen na true, aktivnost se može izvoditi u podijeljenom ekranu i slobodnom obliku. Ako je atribut postavljen na false, operacija ne podržava način rada s više prozora. Ako je vrijednost lažna i korisnik pokuša pokrenuti aktivnost u višeprozorskom načinu, aktivnost ispunjava cijeli ekran.

Ako aplikacija cilja Android N, ali nije navedena vrijednost za ovaj atribut, zadana vrijednost je tačna.

android:supportsPictureInPicture

Postavite ovaj atribut na čvor manifest da naznači da li operacija podržava način rada slika u slici. Ovaj atribut se zanemaruje ako je android:resizeableActivity postavljen na false.

Android:supportsPictureInPicture=["true" | "lažno"]

Layout Attributes

U elementu manifesta Android N podržava nekoliko atributa koji definiraju ponašanje operacije u multi-window modu.

Android:defaultWidth Zadana širina prozora aktivnosti u slobodnom obliku. android:defaultHeight Zadana visina prozora aktivnosti u slobodnom obliku. android:gravity Početna pozicija prozora aktivnosti u slobodnom obliku. Pogledajte opis klase za važeće vrijednosti. android:minimalSize Minimalna visina i širina prozora aktivnosti u režimima podeljenog ekrana i slobodnog oblika. Ako korisnik pomjeri liniju separatora u načinu podijeljenog ekrana kako bi radni prozor bio manji od specificiranog minimuma, sistem će ga izrezati na veličinu koju traži korisnik.

Sljedeći primjer koda pokazuje kako postaviti zadanu veličinu i poziciju prozora aktivnosti, kao i njegovu minimalnu veličinu u slobodnom obliku:

Pokretanje aplikacije u više prozora

Android N donosi nove funkcije za podršku aplikacijama u načinu rada s više prozora.

Nedostupne funkcije u načinu rada s više prozora

Neke funkcije su onemogućene ili zanemarene u načinu rada s više prozora jer nemaju smisla za operaciju koja se prikazuje na ekranu uređaja istovremeno s drugim operacijama ili aplikacijama. Slijede primjeri takvih mogućnosti.

  • Neke opcije prilagođavanja su onemogućene. Na primjer, aplikacije ne mogu sakriti statusnu traku osim ako ne rade u načinu rada preko cijelog ekrana.
  • Sistem ignorira promjene atributa.

Promijenite obavještenja i zahtjeve u načinu rada s više prozora

Activity.inMultiWindow() Pozovite ovu metodu da saznate da li je aktivnost u režimu sa više prozora. Activity.inPictureInPicture() Pozovite ovu metodu da saznate da li je aktivnost u režimu slika u slici.

Bilješka. Režim slika u slici je poseban slučaj višeprozornog režima. Ako metoda myActivity.inPictureInPicture() vraća true, myActivity.inMultiWindow() također vraća true.

Activity.onMultiWindowChanged() Sistem poziva ovu metodu kada aktivnost uđe ili izađe iz režima sa više prozora. Sistem prosljeđuje metodu true ako operacija uđe u način rada s više prozora i false ako izađe iz nje. Activity.onPictureInPictureChanged() Sistem poziva ovu metodu kada aktivnost uđe u režim slika u slici. Sistem prosljeđuje metodu true ako operacija ulazi u režim slika u slici i false ako izađe.

Pokretanje novih operacija u režimu više prozora

Kada započnete novu aktivnost, možete reći sistemu da prikaže novi prozor aktivnosti pored trenutne, ako je moguće. Da biste to učinili, koristite oznaku Intent.FLAG_ACTIVITY_LAUNCH_TO_ADJACENT. Ova zastavica zahtijeva sljedeće ponašanje.

  • Ako je uređaj u režimu podeljenog ekrana, sistem pokušava da kreira novi prozor aktivnosti pored onog koji ga je pokrenuo, kako bi se dve aktivnosti uklopile na ekran. Nije zagarantovano da će sistem to moći, ali ako je moguće, operacije se prikazuju jedna pored druge.
  • Ako uređaj nije u načinu rada podijeljenog ekrana, ova oznaka se zanemaruje.

Ako je uređaj u slobodnom načinu rada kada pokreće novu aktivnost, možete postaviti veličinu i poziciju prozora nove aktivnosti pozivanjem ActivityOptions.setLaunchBounds() metode. Ova metoda se zanemaruje ako uređaj nije u načinu rada s više prozora.

Bilješka. Ako pokrenete aktivnost na skupu zadataka, ona će zamijeniti aktivnost na ekranu, naslijeđujući sva svojstva više prozora. Da biste započeli novu aktivnost u posebnom prozoru u višeprozorskom načinu, ona mora biti pokrenuta u novom skupu zadataka.

Podrška za prevlačenje i ispuštanje

android.view.DropPermissions Token objekt za određivanje dozvola za aplikaciju u koju se podaci ispuštaju. View.startDragAndDrop() Novi pseudonim za . Da biste omogućili prevlačenje između operacija, proslijedite novu zastavicu View.DRAG_FLAG_GLOBAL. Ako trebate dodijeliti dozvole za čitanje ili pisanje URI za operaciju primanja, proslijedite novu View.DRAG_FLAG_GLOBAL_URI_READ ili View.DRAG_FLAG_GLOBAL_URI_WRITE zastavicu respektivno. View.cancelDragAndDrop() Otkazuje trenutnu operaciju prevlačenja. Ovu metodu može pozvati samo aplikacija u kojoj je pokrenuta operacija prevlačenja. View.updateDragShadow() Zamjenjuje senku trenutne operacije prevlačenja. Ovu metodu može pozvati samo aplikacija u kojoj je pokrenuta operacija prevlačenja. Activity.requestDropPermissions() Zahtijeva dozvole za URI sadržaja proslijeđene objektu u .

Testiranje aplikacije u više prozora

Bez obzira na to da li ažurirate svoju Android N aplikaciju ili ne, morate potvrditi njeno ponašanje u više prozora u slučaju da korisnik pokuša da je pokrene u načinu rada s više prozora na Android N uređaju.

Testirajte podešavanje uređaja

Ako instalirate Android N na svoj uređaj, automatski će biti podržan način rada s podijeljenim ekranom.

Ako je aplikacija kreirana bez korištenja N Preview SDK

Ako niste koristili N Preview SDK za kreiranje aplikacije, a korisnik pokuša da je pokrene u režimu sa više prozora, sistem će naterati prozor aplikacije da promeni veličinu ako njegova orijentacija nije fiksna.

Ako aplikacija nije postavljena na fiksnu orijentaciju, trebali biste je pokrenuti na Android N uređaju i pokušati je staviti u način rada podijeljenog ekrana. Provjerite radi li aplikacija dobro nakon prisilne promjene veličine.

Ako je aplikacija postavljena na fiksnu orijentaciju, pokušajte je staviti u način rada s više prozora. Uvjerite se da aplikacija ostaje u načinu rada preko cijelog ekrana dok to radite.

Ako aplikacija podržava način rada s više prozora

Ako ste koristili N Preview SDK za izradu aplikacije i niste onemogućili podršku za više prozora, testirajte svoju aplikaciju u režimima podijeljenog ekrana i slobodnog oblika kao što je opisano u nastavku.

  • Pokrenite aplikaciju u režimu celog ekrana, a zatim pređite na režim sa više prozora dugim pritiskom na dugme "Pretraži". Uvjerite se da se aplikacija pravilno prebacuje između načina rada.
  • Pokrenite aplikaciju direktno u načinu rada s više prozora i provjerite radi li dobro. Aplikaciju možete pokrenuti u višeprozorskom režimu tako što ćete pritisnuti dugme Pregledaj, zatim dugo pritisnuti naslovnu traku aplikacije i prevući je u jednu od označenih oblasti na ekranu.
  • Promenite veličinu prozora aplikacije u režimu podeljenog ekrana prevlačenjem podeljene linije. Uvjerite se da se promjena veličine ne sruši i da potrebni elementi korisničkog sučelja ostaju vidljivi.
  • Ako ste naveli minimalnu veličinu za prozor aplikacije, pokušajte je postaviti manju od minimalne. Uvjerite se da ne možete postaviti veličinu ispod navedenog minimuma.
  • Tokom svih testova, pratite performanse aplikacije - trebalo bi da budu prihvatljive. Na primjer, uvjerite se da nakon promjene veličine prozora aplikacije nema velikog kašnjenja u ažuriranju sučelja.

Kontrolna lista za testiranje

Da biste testirali performanse aplikacije u načinu rada s više prozora, izvršite sljedeće operacije. Pokušajte da ih pokrenete u režimu podeljenog ekrana i više prozora osim ako nije drugačije naznačeno.

  • Prebacite se na način rada s više prozora i izađite iz njega.
  • Prebacite se sa svoje aplikacije na drugu aplikaciju i provjerite radi li aplikacija dobro ako je vidljiva, ali nije aktivna. Na primjer, ako aplikacija prikazuje video, on bi trebao nastaviti da se reproducira dok korisnik radi s drugom aplikacijom.
  • U režimu podeljenog ekrana, pokušajte da pomerite podeljenu liniju tako što ćete povećati i smanjiti prozor aplikacije. Isprobajte ove operacije kada su prozori dvije aplikacije jedan pored drugog i jedan na drugom. Uvjerite se da se aplikacija ne sruši, da su potrebni elementi vidljivi i da promjena veličine ne traje predugo.
  • Brzo promijenite veličinu prozora aplikacije nekoliko puta zaredom. Uvjerite se da se aplikacija ne smrzne ili ne propušta memoriju. Za informacije o provjeri upotrebe memorije aplikacije pogledajte dokument.
  • Igrajte se s aplikacijom u različitim konfiguracijama prozora i uvjerite se da se ponaša kako se očekuje. Tekst bi trebao biti lak za čitanje, a elementi interfejsa ne bi trebali biti premali.

Ako ste onemogućili podršku za više prozora

Ako ste onemogućili podršku za više prozora postavljanjem atributa android:resizableActivity="false", pokrenite aplikaciju na Android N uređaju i pokušajte je staviti u režime slobodnog oblika i podijeljenog ekrana. Uvjerite se da aplikacija ostaje u načinu rada preko cijelog ekrana dok to radite.

Top Related Articles