Android webview - szabása böngésző

Új projekt létrehozása MyBrowser és azonnal cserélje ki a kódot a jelölő fájl res / layout / activity_main.xml:

Mivel az alkalmazás használja az internetet, meg kell adnia az engedélyt, hogy az internetet a nyilvánvaló fájlt.

Szintén a kiáltvány módosítsa a vonalat a képernyő, eltávolítva a cím a mi alkalmazás (vastagon szedve):

Az alkalmazás futtatásához. A rendelkezésünkre volt egy egyszerű néző weboldalakat, de egy hátránya. Ha rákattint bármelyik linkre, akkor automatikusan elindítja az alapértelmezett böngésző, és megjeleníti az új oldal már ott van.

Android webview - szabása böngésző

Upd. Most azt találtam, hogy most akkor is, ha az alkalmazás futtatásához, ha a böngésző megnyitja. Korábban ez nem volt.

Ahhoz, hogy megoldja ezt a problémát, és kapná a programban, akkor kell felülírni WebViewClient osztály, és lehetővé teszi a kérelmet linkek kezelésére. Add meg a kódot beágyazott osztály:

Ezután, a módszer onCreate () meghatározza MyWebViewClient példány. Ez lehet bárhol az inicializálás után WebView- tárgy:

Most, a mi alkalmazás hoztunk létre WebViewClient. amely lehetővé teszi, hogy töltse fel a megadott URL kiválasztott WebView-. önmagában WebView tartályba. ahelyett indít egy böngésző. Erre a funkcionalitás találkozik shouldOverrideUrlLoading módszer (WebView-, karakterlánc). amelyben rámutatnak a jelenlegi WebView- és URL-t. Igazat ad vissza, azt mondja, hogy nem kell, hogy indítson egy harmadik fél böngésző, és feltöltheti saját tartalom van.

Futtassa újra a programot, és győződjön meg arról, hogy a linkek most töltik fel az alkalmazást. De most van egy másik probléma. Nem mehetünk vissza az előző oldalra. Ha rákattintunk a vissza gombot (Vissza) a készüléken, akkor egyszerűen zárja be az alkalmazást. Annak érdekében, hogy megoldja egy új probléma, meg kell kezelni a Vissza gomb megnyomásával. Új módszer:

Meg kell, hogy ellenőrizze, hogy a WebView- támogatja navigáció az előző oldalra. Ha a feltétel igaz, akkor az úgynevezett GoBack () metódust. amely elvezet minket vissza az előző oldalra vissza egy lépést. Ha több oldalas gépelt, akkor következetesen menjen vissza az első oldalra. Ha ezt a módszert mindig vissza true értékkel. Ha visszaérünk a legelső oldalon, amely indul a szörfözés az interneten, aztán gyere vissza hamis és feldolgozása a Vissza gomb megnyomásával is részt már maga a rendszer, amely elzárja az alkalmazás képernyőn.

Android webview - szabása böngésző

Ha szüksége van néhány link az Ön webhelyére mutató nyitva a böngésző, és a helyi kapcsolatokat megnyitni az alkalmazást, hogy a feltételek használhatók a különböző visszatérési értékeket.

Egy univerzális módszer, amely minden helyi kapcsolatok megnyílik az alkalmazás, a többi böngésző (változó egyet):

És most egy kicsit bonyolítja a példát, hogy a felhasználó egy másik szabványos böngészők.

Annak érdekében, hogy tisztább, remake például következik. Készítsen két tevékenység. Az első helyen a tevékenység gombot, hogy a második tevékenységet, és a komponenseket a második WebView- aktivitást.

A kiáltvány a második szűrő aktivitást.

A kódot az gombot, hogy a második tevékenységet.

A második tevékenység az adatok fogadására:

A szűrőt a második tevékenységet már jeleztük két lépésben.

Ez azt jelenti, hogy minden olyan tevékenységet (azaz alkalmazások) is okozhat a tevékenység egy mini-böngésző ugyanazon az elven. Kezdje a stúdióban egy külön ablakban a régi projekt, vagy hozzon létre egy újat, és add meg a gombot, és sorolja fel ugyanazt a kódot használtuk az egy gombnyomással.

Akkor mutasd be a vonal formájában egy szövegben, és tájékoztassa a lehetséges felhasználókat a böngésző, akkor elkezd otthon. De Android már egy ilyen kész állandó ACTION_VIEW. hogy segítséget dokumentáció a következő:

Átírni a kódot a gomb a második bejelentés

Mi történik ilyenkor? Emlékszünk, hogy van két művelet fejtik ki, beleértve android.intent.action.VIEW. Tehát az első alkalmazás egy böngésző kell ismernie ezt a parancsot, ha bármely alkalmazás a felhasználó ezt a kódot használja. Az emulátor legalább van egy ilyen program „Browser”, és most hozzá a második tevékenység az első alkalmazás. A képernyő lesz a választás két alkalmazás.

Android webview - szabása böngésző

És ha eltávolítja az összes alternatív böngészők és hagyja csak a programot, akkor a választás nem lesz. Böngészője lesz az elsődleges. És ha néhány alkalmazás hozzá akar kezdeni a weboldal ezen a módon, mert nyit a program.

Egy kis megjegyzés. Ha kicseréli az utolsó sort erre:

A program kiválasztás ablak helyett a felső sorban a „Társítás”, és a helyi fordítás a gyors. De ez nem fontos. Ha valamilyen ok miatt az eszköz nem fog megjelenni semmilyen böngésző, ez a verzió a kód nem okoz összeomlott a alkalmazás, ellentétben az eredeti változatot. Éppen ezért, ha a javasolt megoldás a biztonság kedvéért.

további irodalom