# ニュース: LIFF v2.4.1をリリースしました

LIFF v2.4.1をリリースしました

LIFF v2.4.1をリリースしました。
LIFF v2.4.1における変更点は以下のとおりです。

# LIFFアプリを閉じずに別のLIFFアプリを開く機能の不具合を修正しました

2020年8月31日にお知らせした、LIFFアプリを閉じずに別のLIFFアプリを開く機能に不具合があり、条件を満たしていても正しく動作しないことがわかりました。

LIFF v2.4.1では、動作条件を下記に変更したうえで、不具合を修正しています。

項目 変更前 変更後
LIFF SDK 2.4.0 2.4.1
LINE 10.16.0 10.18.0
LIFF v2.4.0の利用は非推奨です

上記の不具合があるため、LIFF v2.4.0の利用は非推奨になります。 LIFF v2.4.0をお使いの場合は、v2.4.1へのアップデートをお勧めします。

詳しくは、『LIFFドキュメント』の「LIFFアプリから別のLIFFアプリを開いた場合の動作について」を参照してください。

# liff.isApiAvailable()でLIFF間遷移可能な状態か確認できるようになりました

APIの使用可否を確認するliff.isApiAvailable()で、LIFF間遷移可否の確認ができるようになりました。

別のLIFFアプリを開く前に、liff.isApiAvailable('multipleLiffTransition')を実行することで、LIFF間遷移が可能な状態か確認することができます。 別のLIFFアプリを開く際に、エラーが発生することを避けることができます。

if (liff.isApiAvailable('multipleLiffTransition')) {
  window.location.href = "https://line.me/{liffId}", // URL for another LIFF app
}
liff.getContext()を使ってLIFF間遷移の情報を取得する

LIFFアプリの情報を取得するliff.getContext()を使って、LIFF間遷移の可否や、実行可能なLINEバージョンを取得することもできるようになりました。

  • availability.multipleLiffTransition.permission:別のLIFFアプリへの遷移が可能かどうかを表します。
  • availability.multipleLiffTransition.minVer:別のLIFFアプリへの遷移が可能なLINEの最小バージョンを表します。

以下は、liff.getContext()を実行した際の戻り値の例です。

{
    "type": "utou",
    "utouId": "UU29e6eb36812f484fd275d41b5af4e760926c516d8c9faa35…b1e8de8fbb6ecb263ee8724e48118565e3368d39778fe648d",
    "userId": "U70e153189a29f1188b045366285346bc",
    "viewType": "full",
    "accessTokenHash": "ArIXhlwQMAZyW7SDHm7L2g",
    "availability": {
        "shareTargetPicker": {
            "permission": true,
            "minVer": "10.3.0"
        },
        "multipleLiffTransition": {
            "permission": true,
            "minVer": "10.18.0"
        }
    }
}

詳しくは、『LIFF APIリファレンス』の「liff.isApiAvailable()」および「liff.getContext()」を参照してください。

# liff.init()が二回呼びだされた際の動作を修正しました

liff.init()によるLIFFアプリの初期化が成功する条件下においてliff.init()を2回以上実行すると、rejectされたPromiseオブジェクトがエラーメッセージと共に返却されていました。

LIFF v2.4.1では、liff.init()が成功する条件下においてliff.init()を2回以上実行すると、resolveされたPromiseオブジェクトが返却され、警告メッセージが出力されるよう修正されました。

LIFFアプリの初期化について詳しくは『LIFFドキュメント』の「LIFFアプリを初期化する」を参照してください。