Using the Capacitor v1.1 Browser API to open urls

capacitor electron ionic ios pwa Tutorials

In this tutorial, I want to show you how to integrate Capacitor Browser API into your Ionic project and how it will work in IOS app, Electron and in the Chrome browser.

Getting started

To follow this tutorial you should have the basic fundamentals of the command line, installed Node, Ionic, Capacitor, Live Server All the following was done with the next requirements: Node v12.4, Ionic v4.4.0, Capacitor v1.1, Live Server v.1.2.0

New project

In this step, you need to follow everything described in this official Capacitor doc. We will use the capacitorBrowserExample as **appName **(also for Ionic project too)** and com.roma.capacitorBrowserExample as appId**. On the step of adding platforms, we will add IOS and Electron.


Let’s go to the project folder and open the src/app/tab1/ file. We will include Capacitor Browser API to this component and create a simple method to open the specified URL.

Modify src/app/tab1/ to reflect the following:

import { Component } from '@angular/core';
import { Plugins } from '@capacitor/core';
const { Browser } = Plugins;

  selector: 'app-tab1',
  templateUrl: '',
  styleUrls: ['']
export class Tab1Page {
  url = '';
  constructor() { }

  async openURL(url) {
    await{ 'url': url });
} method (line 15) takes an object of **BrowserOpenOptions interface. **You can check more about in the official Capacitor doc.


Our template will very simple. Just one input and button to call **openURL **method.

Modify src/app/tab1/**.html** to reflect the following:

    <ion-title> Tab One </ion-title>
      <ion-label fixed>URL</ion-label>
      <ion-input type="text" [(ngModel)]="url"></ion-input>
  <ion-button expand="full" block (click)="openURL(url)">Open URL</ion-button>


Let’s build and run this project on specified platforms. We can do it using the running the next chain of commands in the terminal:

ionic build
npx cap copy


To check this project in Xcode we need to run the following:

npx cap open ios

Then we will run this project in the Xcode. You should see the next:

Project on IOS platform

After clicking on the **openURL **button:

After clicking on the openURL button


To open this app as the desktop application you need to run the following in the project folder:

cd electron && npm run electron:start

First, you will see the default Capacitor loading message:

Capacitor Electron Loading message

The desktop application:

After clicking on the **openURL **button:

After clicking button


To open the PWA build of this project you need to run the next in project folder:

cd www/ && live-server

After that, the window will open in your default browser (in my case - Chrome):

PWA build

You can see the information about this app in the **Application **tab inside Chrome Developer tools


As you can see, it’s was not a big deal to integrate Capacitor Browser API into the Ionic application. All code you can find here.

comments powered by Disqus