Mobile/GeckoView

From MozillaWiki
< Mobile
Revision as of 00:00, 24 August 2013 by Stully (talk | contribs)
Jump to navigation Jump to search

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 880107.

Using GeckoView

  1. Download and unzip geckoview_library.zip and geckoview_assets.zip from [URL].
  2. Open Eclipse and import the GeckoView library project by doing File > Import.
  3. Set the imported GeckoView library project as a dependency in your app by adding it in the Android section of your project's properties as seen in the screenshot below. Geckoview settings.png
  4. Copy the assets folder from the geckoview_assets.zip to your app's assets folder.
  5. Add "manifestmerger.enabled=true" to your project's project.properties file.

Your directory structure should look like the following:

Geckoview project structure.png

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:

GeckoView geckoView = (GeckoView) findViewById(R.id.geckoview);
geckoView.loadUrlInNewTab("http://mozilla.com");

Example App

The example app is a bare bones Android app that uses GeckoView. To use it, you will still need to follow the instructions above to add the GeckoView library to the app.

File:GeckoViewExample.zip

When running, it looks as such:

Geckoview example.png

Known Issues

Asset Compression - bug 908929

GeckoView assets (.so's) should not be compressed in final APK's built by 3rd-party developers. This may cause problems in some cases. See bug 908929.