Deze snelle tip toont u hoe u de ingebouwde browser-applicatie op drie manieren start. Eerst leer je hoe je de browser naar een specifieke URL start. Ten tweede leer je hoe je tekst met links kunt maken. Ten derde leert u hoe u een Google-webzoekopdracht kunt starten en de zoekcriteria kunt opgeven. U bereikt deze doelen door de juiste intenties te maken en te configureren binnen de Activiteitsklasse van uw toepassing.
Begin met het maken van een Android-project. Implementeer uw Android-applicatie zoals normaal. Nadat u een project hebt opgezet en de toepassing hebt uitgevoerd, bepaalt u onder welke omstandigheden u de browser wilt starten. Zal dit gebeuren wanneer de knopbedieningen worden ingedrukt? Voer de nodige controles uit die zullen leiden tot surfen op het web of het doorzoeken van functies van de applicatie, inclusief elke klikhandeling. Zodra u deze taken hebt voltooid, kunt u plaatsen in de code plaatsen om de browser te starten of op het web te zoeken. Nu bent u klaar om verder te gaan met deze snelle tip.
U kunt ons project volgen: HelloWorldWideWeb, dat beschikbaar is als open source.
Android gebruikt URI-objecten (Uniform Resource Identifier) om de unieke locatie van een gegeven te identificeren. Uri-objecten worden vaak gebruikt om de gegevens te specificeren die een intentie zou moeten gebruiken. In dit geval maken we een URI-object van een web-URL met de methode parse ():
Uri uriUrl = Uri.parse ("http://androidbook.blogspot.com/");
U kunt HTML-inhoud bekijken met behulp van de volgende Intent: android.content.Intent.ACTION_VIEW. Begin met het maken van een intentie van dit type en specificeer de URI die je hierboven hebt gemaakt, als volgt, binnen je Button click handler:
Intent launchBrowser = nieuwe Intent (Intent.ACTION_VIEW, uriUrl);
Wanneer u deze intentie start, kunnen toepassingen die web kunnen weergeven dit verzoek afhandelen. Nadat u de typegegevens voor de Intent hebt ingesteld, kunt u de methode startActivity () aanroepen en uw intentie doorgeven:
startActivity (launchBrowser);
Wanneer u op deze knop klikt, wordt de browser-applicatie (die over het algemeen HTML-inhoud weergeeft) gelanceerd naar de website die u heeft opgegeven.
Wanneer u op de knop Terug klikt, keert u terug naar de vorige activiteit, die toevallig uw toepassing is.
Een andere eenvoudige manier om in de browser te starten is eenvoudigweg door koppelingen in tekst op het scherm op te nemen. Het TextView-object kan worden geconfigureerd om deze te vinden en vervolgens om te zetten in klikbare koppelingen, zoals in een webbrowser, zodat wanneer de gebruiker erop klikt ze de browser naar de juiste plek lanceren. De volgende TextView doet bijvoorbeeld precies dat:
De volgende schermafbeelding laat zien hoe dit eruit ziet.
De tekst voor @ string / contains_links is letterlijk voor wat u op het scherm ziet. Er zijn geen speciale opmaakopdrachten of -tags nodig binnen de tekenreeks.
Wanneer u de gebruiker de mogelijkheid wilt bieden om een zoekopdracht op internet uit te voeren, kunt u nog steeds de intentie ACTION_VIEW gebruiken en de queryreeksen instellen die geschikt zijn voor een specifieke zoekmachine, of als u tevreden bent met een Google-zoekopdracht, kunt u deze eenvoudig gebruiken de webzoekopdracht: android.content.Intent.ACTION_WEB_SEARCH. Begin met het maken van een intentie van dit type, als volgt, binnen je tweede knopklik-handler:
Intent search = new Intent (Intent.ACTION_WEB_SEARCH);
Vaak wilt u een aantal criteria opgeven om op te zoeken. U kunt dit doen door deze informatie te leveren als onderdeel van de extra's van de Intent. De ACTION_WEB_SEARCH Intent gebruikt specifiek het extra veld SearchManager.QUERY voor de zoekcriteria. Als u bijvoorbeeld de Google-zoekopdracht wilt uitvoeren op dwerggeiten, configureert u de SearchManager.QUERY extra en start u de browser als volgt:
Intent search = new Intent (Intent.ACTION_WEB_SEARCH); search.putExtra (SearchManager.QUERY, "pygmy goats"); startActivity (zoeken);
Wanneer u op deze knop klikt, wordt de browser-applicatie (die over het algemeen HTML-inhoud weergeeft) gelanceerd naar de website die u heeft opgegeven.
Een opmerking over machtigingen: Hoewel uw toepassing gebruikmaakt van de browserfuncties op het apparaat, zijn dergelijke machtigingen niet vereist. Dit komt omdat de applicatie niet direct webcontent weergeeft. In plaats daarvan maakt het alleen gebruik van de mogelijkheden van andere applicaties om dit te doen.
Voor meer fijne controle over webinhoud binnen uw toepassingen, wilt u het WebView-besturingselement gebruiken. Deze speciale weergave biedt een fijne controle over het weergeven van webinhoud. Dit besturingselement vereist echter dat uw app de juiste machtigingen heeft om dat te doen, en dat, vrienden, wordt besproken in een zelfstudie hier op Mobiletuts+!
In deze snelle tip hebt u geleerd hoe u een Intent configureert om de browser te starten en een zoekopdracht uit te voeren. Deze functie kan erg handig zijn voor toepassingen die webinhoud willen binnen hun toepassingen.
Mobiele ontwikkelaars Lauren Darcey en Shane Conder hebben samen meerdere boeken geschreven over Android-ontwikkeling: een diepgaand programmeerboek getiteld Android Wireless Application Development en Sams TeachYourself Android Application Development binnen 24 uur. Wanneer ze niet schrijven, besteden ze hun tijd aan het ontwikkelen van mobiele software bij hun bedrijf en het leveren van consultingservices. Ze zijn te bereiken via e-mail naar [email protected], via hun blog op androidbook.blogspot.com, en op Twitter @androidwireless.