The differences between LIFF browser and LINE's in-app browser

When you open a LIFF app within the LINE app, the LIFF app will open in either the LIFF browser or LINE's in-app browser. The LIFF browser and LINE's in-app browser are different browsers, and some LIFF app features are only available in the LIFF browser.

This page explains how to identify whether a browser is the LIFF browser or LINE's in-app browser and the differences in available features.

LIFF browser

A browser dedicated to LIFF apps. When you open a LIFF app using the following ways, the LIFF app will open in the LIFF browser:

  • Tap the LIFF URL in a chat room of the LINE app.
  • Tap the LIFF URL in an external browser.

LINE's in-app browser

A browser dedicated to use within the LINE app. When you open a LIFF app using the following way, the LIFF app will open in LINE's in-app browser:

  • Tap the endpoint URL of the LIFF app in a chat room of the LINE app.

Note that in LIFF, LINE's in-app browser is treated as a type of external browser. For example if you execute the liff.getContext() method in LINE's in-app browser, the value of the type property in the return value will be external (external browser).

Identify whether a browser is the LIFF browser or LINE's in-app browser

There are two ways to identify whether the browser running a LIFF app is the LIFF browser or LINE's in-app browser:

Identify from the user interface

The interface of headers and footers differs between the LIFF browser and LINE's in-app browser. Therefore, you can identify whether a browser is the LIFF browser or LINE's in-app browser by checking the user interface of the browser where a LIFF app is open.

LIFF browserLINE's in-app browser
  • Header
    • Minimizing button is not present
    • Action button is present (*)
  • Footer is not present
  • Header
    • Minimizing button is present
    • Action button is not present
  • Footer is present

* The action button isn't displayed in module mode. For more information, see Adding the LIFF app to your channel.

Identify using the liff.isInClient() method

You can identify whether a browser is the LIFF browser using the liff.isInClient() method. For more information, see liff.isInClient() in the LIFF API reference.

The differences in features available between the LIFF browser and LINE's in-app browser

The differences in features available between the LIFF browser and LINE's in-app browser are as follows:

FeatureLIFF browserLINE's in-app browser
Specifying the view size
Action button
Multi-tab view
2D code reader
Sending messages to the chat room
Share target picker
Popup display when navigating to an external site that isn't a LIFF app
LIFF-to-LIFF transition

✅: Available
❌: Not available