Safari View Controller
For displaying read-only web content.
Requires Cordova plugin: cordova-plugin-safariviewcontroller
. For more info, please see the Safari View Controller plugin docs.
Repo: https://github.com/EddyVerbruggen/cordova-plugin-safariviewcontroller
Installation
- Install the Cordova and Ionic Native plugins:
$ ionic cordova plugin add cordova-plugin-safariviewcontroller $ npm install --save @ionic-native/safari-view-controller@4
- Add this plugin to your app's module
Supported platforms
- Android
- iOS
Usage
import { SafariViewController } from '@ionic-native/safari-view-controller'; constructor(private safariViewController: SafariViewController) { } ... this.safariViewController.isAvailable() .then((available: boolean) => { if (available) { this.safariViewController.show({ url: 'https://ionic.io', hidden: false, animated: false, transition: 'curl', enterReaderModeIfAvailable: true, tintColor: '#ff0000' }) .subscribe((result: any) => { if(result.event === 'opened') console.log('Opened'); else if(result.event === 'loaded') console.log('Loaded'); else if(result.event === 'closed') console.log('Closed'); }, (error: any) => console.error(error) ); } else { // use fallback browser, example InAppBrowser } } );
Instance Members
isAvailable()
Checks if SafariViewController is available
Returns: Promise<boolean>
show(options)
Shows Safari View Controller
Param | Type | Details |
---|---|---|
options | SafariViewControllerOptions | optional |
Returns: Observable<any>
hide()
Hides Safari View Controller
connectToService()
Tries to connect to the Chrome’s custom tabs service. you must call this method before calling any of the other methods listed below.
Returns: Promise<any>
warmUp()
Call this method whenever there’s a chance the user will open an external url.
Returns: Promise<any>
mayLaunchUrl(url)
For even better performance optimization, call this methods if there’s more than a 50% chance the user will open a certain URL.
Param | Type | Details |
---|---|---|
url | string |
Returns: Promise<any>
SafariViewControllerOptions
Param | Type | Details |
---|---|---|
animated | boolean | (optional) |
barColor | string | (optional) |
controlTintColor | string | (optional) |
enterReaderModeIfAvailable | boolean | (optional) |
hidden | boolean | (optional) |
showDefaultShareMenuItem | boolean | (optional) |
tintColor | string | (optional) |
toolbarColor | string | (optional) |
transition | string | (optional) |
url | string | (optional) |