layout | title | nav_order | summary | tags | |||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
default |
Getting Started with GeckoView |
2 |
How to use GeckoView in your Android app. |
|
Building a browser? Check out Android Components, our collection of ready-to-use support libraries!
The following article is a brief guide to embedding GeckoView in an app. For a more in depth tutorial on getting started with GeckoView please read the article we have published on raywenderlich.com.
{: .no_toc .text-delta }
- TOC {:toc}
You need to add or edit four stanzas inside your module's build.gradle
file.
1. Set the GeckoView version
Like Firefox, GeckoView has three release channels: Stable, Beta, and Nightly. Browse the Maven Repository to see currently available builds.
ext {
geckoviewChannel = "nightly"
geckoviewVersion = "70.0.20190712095934"
}
2. Add Mozilla's Maven repository
repositories {
maven {
url "https://maven.mozilla.org/maven2/"
}
}
3. Java 8 required support
As GeckoView uses some Java 8 APIs, it requires these compatibility flags:
compileOptions {
sourceCompatibility JavaVersion.VERSION_1_8
targetCompatibility JavaVersion.VERSION_1_8
}
4. Add GeckoView Implementations
dependencies {
// ...
implementation "org.mozilla.geckoview:geckoview-${geckoviewChannel}:${geckoviewVersion}"
}
Inside a layout .xml
file, add the following:
<org.mozilla.geckoview.GeckoView
android:id="@+id/geckoview"
android:layout_width="fill_parent"
android:layout_height="fill_parent" />
1. Import the GeckoView classes inside an Activity:
import org.mozilla.geckoview.GeckoRuntime;
import org.mozilla.geckoview.GeckoSession;
import org.mozilla.geckoview.GeckoView;
2. In that activity's onCreate
function, add the following:
GeckoView view = findViewById(R.id.geckoview);
GeckoSession session = new GeckoSession();
GeckoRuntime runtime = GeckoRuntime.create(this);
session.open(runtime);
view.setSession(session);
session.loadUri("about:buildconfig"); // Or any other URL...
Your application should now load and display a webpage inside of GeckoView.
To learn more about GeckoView's capabilities, review GeckoView's JavaDoc or the reference application.