Mobile/GeckoView: Difference between revisions
Line 100: | Line 100: | ||
{ | { | ||
"status_whiteboard": "[geckoview:klar]", | "status_whiteboard": "[geckoview:klar]", | ||
"priority": [" | "priority": ["--"], | ||
"resolution": "---", | "resolution": "---", | ||
"include_fields": "id, priority, summary, whiteboard, assigned_to", | "include_fields": "id, priority, summary, whiteboard, assigned_to", |
Revision as of 13:58, 16 March 2018
What is GeckoView
GeckoView is an Android library project that allows third-party developers to use Gecko as an Android View in their own applications. GeckoView is similar to Android's built in WebView, but it is not a drop in replacement for WebView.
Note that GeckoView is NOT ready to be used in a production environment. It is currently possible to load webpages, but that's about it. See bug 1322573.
Using GeckoView
- Download a recent GeckoView AAR from treeherder (mozilla-central tree). The AAR is available from the 'Android API16+ Gradle opt' job under the 'Bng' symbol. After clicking that, there is a link to 'geckoview-0.0.1.aar' in the bottom pane.
- Add the GeckoView AAR to your Gradle / Android Studio project. In Android Studio you can add the .aar as follows:
- Move the geckoview aar to your project's 'app/libs' folder.
- Use the 'New Module' option under the 'File' menu.
- Import the .aar file.
- Add the new GeckoView AAR module as a dependency to the application.
You can now use GeckoView your app by including the following in a layout XML file:
<org.mozilla.gecko.GeckoView android:id="@+id/geckoview" android:layout_width="fill_parent" android:layout_height="wrap_content" />
You can then load a page in your code with:
// Find the GeckoView in our layout GeckoView geckoView = (GeckoView) findViewById(R.id.geckoview); // Attach the GeckoView to a new GeckoSession GeckoSession session = new GeckoSession(); geckoView.setSession(session); // Load a URL session.loadUri("http://mozilla.com");
Example App
Firefox Focus has a build variant that uses Gecko. To build, check out the Focus code from https://github.com/mozilla-mobile/focus-android
and follow the instructions. The only difference is you need to select one of the Gecko build variants from the Android Studio 'Build' menu.
The Gecko-related code for Focus lives in WebViewProvider.java
Bugs
Klar Blockers
- P1 [geckoview:klar] bugs:
No results.
0 Total; 0 Open (0%); 0 Resolved (0%); 0 Verified (0%);
- Other P1 bugs:
No results.
0 Total; 0 Open (0%); 0 Resolved (0%); 0 Verified (0%);
Klar Backlog
- P2-P3 [geckoview:klar] bugs:
No results.
0 Total; 0 Open (0%); 0 Resolved (0%); 0 Verified (0%);
Klar Unprioritized
- Unprioritized [geckoview:klar] bugs:
No results.
0 Total; 0 Open (0%); 0 Resolved (0%); 0 Verified (0%);
Crow Bugs
- All [geckoview:crow] bugs:
No results.
0 Total; 0 Open (0%); 0 Resolved (0%); 0 Verified (0%);