# LIFF v2 APIリファレンス

# クライアントAPI

# 動作環境

LIFF v2の動作環境については、『LIFFドキュメント』の「概要」を参照してください。

なお、LIFFアプリをLINE内ブラウザで開いた場合と、外部ブラウザで開いた場合では、使用できる機能が異なります。たとえば、liff.scanCode()は、外部ブラウザでは利用できません。詳しくは、各クライアントAPIの説明をご覧ください。

OpenChatでのLIFFアプリの利用はサポートされていません

現在のところ、OpenChatではLIFFアプリの利用は正式にサポートされていません。たとえば、LIFFアプリからプロフィール情報を取得できない場合があります。

# LIFF SDKのエラー

LIFF SDKのエラーはLiffErrorオブジェクトで返されます。

エラーの例

# LiffErrorオブジェクト

code

String

コード

message

String

メッセージ。定義されたメッセージが存在する場合に返されます。

# エラー内容

コード 説明
INIT_FAILED LIFF SDKの初期化時にエラーが発生しました。
INVALID_ARGUMENT 無効な引数が指定されました。
UNAUTHORIZED
  • ユーザーが認可しませんでした。
  • アクセストークンを指定せずにAPIが呼ばれました。
  • LINEログインを行う前に、シェアターゲットピッカーを呼び出しました。
FORBIDDEN
  • 必要な権限がありません。
  • サポートされていない環境で機能を利用しようとしました。
INVALID_CONFIG LINEログインを行うには、liffIdを指定する必要があります。
INVALID_ID_TOKEN IDトークンが正規のものであることを確認できませんでした。
EXCEPTION_IN_SUBWINDOW シェアターゲットピッカーで問題が発生しました。
THINGS_NO_LINKED_DEVICES デバイスがありません。
BLUETOOTH_SETTING_OFF Bluetooth機能がオフになっています。
THINGS_TERMS_NOT_AGREED ユーザーがLINE Thingsの利用規約に同意していません。
BLUETOOTH_NO_LOCATION_PERMISSION ユーザーが位置情報の取得を許可していません。
BLUETOOTH_LOCATION_DISABLED 位置情報取得機能がオフになっています。
BLUETOOTH_LE_API_UNAVAILABLE LIFFのBluetoothプラグインが使用できません。
BLUETOOTH_CONNECT_FAILED デバイスとの接続に失敗しました。
BLUETOOTH_ALREADY_CONNECTED デバイスは接続済みです。
BLUETOOTH_CONNECTION_LOST デバイスが接続されていません。
BLUETOOTH_UNSUPPORTED_OPERATION 指定したcharacteristicでは、指定した操作がサポートされていません。
BLUETOOTH_SERVICE_NOT_FOUND 指定したサービスが、GATTサーバーに存在しません。
BLUETOOTH_CHARACTERISTIC_NOT_FOUND 指定したcharacteristicが、サービスに存在しません。

# liff.init()

LIFFアプリを初期化します。このメソッドを実行すると、LIFF SDKの他のメソッドを実行できるようになります。このとき、LIFF SDKは、現在のユーザーのアクセストークンやIDトークンをLINEプラットフォームから取得します。

注意

LIFFアプリを起動した直後は、「LIFFアプリをチャネルに追加する」で指定したエンドポイントURLにアクセスします。URLが変更される前に、liff.init()を呼び出してください。URLが変更されてからliff.init()を呼び出すと、INIT_FAILEDが返されます。

リクエストの例

# 構文

liff.init(
  config: { liffId: string },
  successCallback?: Function,
  errorCallback?: Function
)

# 引数

config.liffId

String

必須

LIFFアプリID。LIFFアプリをチャネルに追加すると取得できます。詳しくは、「LIFFアプリをチャネルに追加する」を参照してください。
注:LINE以外からLINEログインする場合は、liffIdが必要です。

successCallback

Function

任意

LIFFアプリの初期化に成功したときにデータオブジェクトを返すコールバック
注:コールバックを使用する場合は必要です。

errorCallback

Function

任意

LIFFアプリの初期化に失敗したときにエラーオブジェクトを返すコールバック
注:コールバックを使用する場合は必要です。

# 戻り値

Promiseオブジェクトが返されます。

# liff.ready

LIFFアプリ起動後、liff.init()の実行が初めて終了したときにresolveするPromiseオブジェクトです。liff.readyを利用すると、liff.init()の終了を待って、任意の処理を実行できます。

なお、liff.readyは、liff.init()によるLIFFアプリの初期化が終了する前でも利用できます。

リクエストの例

# 構文

const ready: Promise <void>

# 引数

なし

# 戻り値

Promiseオブジェクトが返されます。

liff.init()Promiseがresolveした場合は、Promise <void>オブジェクトが返されます。

注意

liff.init()実行中に何か問題が起きても、liff.readyはrejectしません。また、LiffErrorオブジェクトを返すこともありません。

# liff.getOS()

ユーザーがLIFFアプリを動作させている環境を取得します。

# 構文

liff.getOS()

# 引数

なし

# 戻り値

ユーザーがLIFFアプリを動作させている環境が、文字列で返されます。

戻り値 説明
ios iOS版のLINE内ブラウザ
android Android版のLINE内ブラウザ
web 外部ブラウザ

# liff.getLanguage()

LIFFアプリを動作させている環境の言語設定を取得します。

# 構文

liff.getLanguage()

# 引数

なし

# 戻り値

LIFFアプリを動作させている環境のnavigator.languageで取得できる言語設定が、文字列で返されます。

# liff.getVersion()

LIFF SDKのバージョンを取得します。

# 構文

liff.getVersion()

# 引数

なし

# 戻り値

LIFF SDKのバージョンが、文字列で返されます。

# liff.isInClient()

LIFFアプリをLINE内ブラウザで動作させているかどうかを取得します。

# 構文

liff.isInClient()

# 引数

なし

# 戻り値

  • true:LINE内ブラウザで動作させている
  • false:外部ブラウザで動作させている

# liff.isLoggedIn()

ユーザーがログインしているかどうかを取得します。

リクエストの例

# 構文

liff.isLoggedIn()

# 引数

なし

# 戻り値

  • true:ログインしている
  • false:ログインしていない

# liff.isApiAvailable()

指定したAPIが、LIFFアプリを起動した環境で使用可能かどうかを確認します。 たとえば、APIが対応しているLINEバージョンであることや、APIを呼び出すために特別な同意が必要な場合は同意していることを確認します。

リクエストの例

# 構文

liff.isApiAvailable(apiName: string): Boolean

# 引数

apiName

String

必須

LIFFのクライアントAPIの名前。以下のAPI名を指定できます。

# 戻り値

指定したAPIが、現在の環境で使用可能かどうかが返されます。

戻り値 説明
true 使用可能
false 使用不可能。以下の場合は、falseが返されます。
  • APIが対応していないLINEバージョンでLIFFアプリを起動した場合
  • 使用するために特別な同意が必要なAPIにもかかわらず、同意していない場合
注意

LIFFアプリを外部ブラウザで利用する場合は、常にtrueを返します。

# liff.login()

ウェブアプリ向けのLINEログインの処理(ウェブログイン)を行います。

注意

liff.login()は、LINE内ブラウザでは利用できません。

リクエストの例

# Syntax

liff.login(
  loginConfig?: {
    redirectUri?: string
  }
)

# 引数

loginConfig.redirectUri

String

任意

LINEログイン後にLIFFアプリで表示するURL。デフォルト値は、LIFFアプリをチャネルに追加したときに設定したエンドポイントURLです。エンドポイントURLの設定方法について詳しくは、『LIFFドキュメント』の「LIFFアプリをチャネルに追加する」を参照してください。

# 戻り値

なし

# liff.logout()

ログアウトします。

リクエストの例

# 構文

liff.logout()

# 引数

なし

# 戻り値

なし

# liff.getAccessToken()

LIFF SDKが取得した「現在のユーザーのアクセストークン」を取得します。

アクセストークンの有効性

ユーザーがLIFFアプリを閉じると、アクセストークンは無効化されます。

LIFF SDKがアクセストークンを取得するタイミング
  • LINE内ブラウザでLIFFアプリを起動した場合は、liff.init()を呼び出したときに、LIFF SDKがアクセストークンを取得します。
  • 外部ブラウザでLIFFアプリを起動した場合は、liff.login()を呼び出してLINEログインし、再度liff.init()を呼び出したときに、LIFF SDKがアクセストークンを取得します。

リクエストの例

# 構文

liff.getAccessToken()

# 引数

なし

# 戻り値

現在のユーザーのアクセストークンを文字列で返します。

# liff.getContext()

LINEの1対1のトーク、グループ、またはトークルームでLIFFアプリが起動された場合に、LIFFアプリが起動された画面(1対1のトーク、グループ、またはトークルーム)を一意に識別する値を取得します。

リクエストの例

# 構文

liff.getContext()

# 引数

なし

# 戻り値

各種APIを呼び出すために必要な情報を含むデータオブジェクトが返されます。

type

String

LIFFアプリが起動された画面の種類。以下のいずれかの値が含まれます。

  • utou:1対1のトーク
  • room:トークルーム
  • group:グループ
  • none:LINEの1対1のトーク、トークルーム、グループ以外から起動した場合。例:ウォレットタブ

viewType

String

LIFFアプリの画面サイズ。以下のいずれかの値が含まれます。

  • compact
  • tall
  • full

詳しくは、「LIFFアプリをチャネルに追加する」を参照してください。

userId

String

ユーザーID。typeプロパティがutouroom、またはgroupの場合に含まれます。

utouId

String

1対1トークID。typeプロパティがutouの場合に含まれます。

roomId

String

トークルームID。typeプロパティがroomの場合に含まれます。

groupId

String

グループID。typeプロパティがgroupの場合に含まれます。

メソッドがnullを返す場合があります

以下の場合は、nullが返されます。

  • 外部ブラウザでLIFFアプリを起動した場合
  • LINE内ブラウザでLIFFアプリを起動し、LINEログインを利用した場合

戻り値の例

# liff.getDecodedIDToken()

liff.init()を呼び出したときに自動的に取得されたIDトークンのペイロードを取得します。ペイロードには、ユーザーの表示名、プロフィール画像のURL、メールアドレスが含まれます。

IDトークンが取得されるタイミング
  • LINE内ブラウザでLIFFアプリを起動した場合は、liff.init()を呼び出したときにIDトークンが自動的に取得されます。
  • 外部ブラウザでLIFFアプリを起動した場合は、liff.login()を呼び出してLINEログインし、再度liff.init()を呼び出したときにIDトークンが自動的に取得されます。

# 構文

liff.getDecodedIDToken()

# 引数

なし

# 戻り値

IDトークンのペイロードが返されます。

IDトークンのペイロードについて詳しくは、「IDトークンからプロフィール情報とメールアドレスを取得する」の「ペイロード」を参照してください。

nullを返す場合があります

LIFFアプリをチャネルに追加するときに、openidスコープを選択しなかった場合は、nullが返されます。

IDトークンのペイロードの例

# liff.getProfile()

現在のユーザーのプロフィールを取得します。

リクエストの例

# 構文

liff.getProfile()

# 引数

なし

# 戻り値

ユーザーのプロフィール情報を含む Promise オブジェクトを返します。

userId

String

ユーザーID

displayName

String

表示名

pictureUrl

String

画像のURL。ユーザーが設定していない場合は返されません。

statusMessage

String

ステータスメッセージ。ユーザーが設定していない場合は返されません。

このメソッドは内部でaxiosを使用して、Social APIを呼び出します。エラー制御についてはaxiosのドキュメントと『Social APIリファレンス』の「ステータスコード」を参照してください。

ユーザーのプロフィール情報の例

# liff.getFriendship()

ユーザーとLINE公式アカウントの友だち関係を取得します。

ただし、LIFFアプリが追加されているLINEログインのチャネルに、LINE公式アカウントがリンクされている場合に、そのLINE公式アカウントとの友だち関係のみを取得できます。LINEログインのチャネルに、LINE公式アカウントをリンクする方法については、『LINEログインドキュメント』の「LINE公式アカウントをLINEログインのチャネルにリンクする」を参照してください。

リクエストの例

# 構文

liff.getFriendship()

# 引数

なし

# 戻り値

友だち関係に関する情報を含む Promise オブジェクトを返します。

friendFlag

Boolean

  • true:ユーザーがLINE公式アカウントを友だち追加済みで、ブロックしていない。
  • false:それ以外の場合。

戻り値の例

# liff.sendMessages()

ユーザーの代わりに、LIFFアプリが開かれているトーク画面にメッセージを送信します。トーク画面以外でLIFFアプリが開かれた場合は、メッセージは送信できません。

注意

liff.sendMessages()は、外部ブラウザでは利用できません。

リクエストの例

# 構文

liff.sendMessages(
  messages: Array<Object>
)

# 引数

messages

Objectの配列

必須

メッセージオブジェクト
最大件数:5
Messaging APIの以下のタイプのメッセージを送信できます。

ボットのLINE公式アカウントが参加しているトークでメッセージが送信されると、LINEプラットフォームからボットサーバーにWebhookイベントが送信されます。liff.sendMessages()メソッドで画像、動画、および音声のメッセージが送信されると、結果として送信されるWebhookイベントのcontentProvider.typeプロパティの値はexternalになります。詳しくは、『Messaging APIリファレンス』の「メッセージイベント」を参照してください。

# 戻り値

メッセージの送信が成功した場合は、戻り値はありません。

このメソッドは内部でFetchを使用して、LINEプラットフォームを呼び出します。エラー制御についてはFetchのドキュメントと以下の「ステータスコード」を参照してください。

# ステータスコード
ステータスコード 説明
400 メッセージが無効です。
401 認証に失敗しました。
403 アクセストークンに適切な権限がありません。

# liff.openWindow()

指定したURLをLINE内ブラウザまたは外部ブラウザで開きます。

リクエストの例

# 構文

liff.openWindow(params)

# 引数

# paramsオブジェクト

url

String

必須

URL。絶対パスで指定します。

external

Boolean

任意

指定したURLを外部ブラウザで開くかどうかを、以下のどちらかの値で指定します。デフォルト値はfalseです。

  • true:外部ブラウザで開きます。
  • false:LINE内ブラウザで開きます。

# 戻り値

なし

# liff.shareTargetPicker()

ターゲットピッカー(グループまたは友だちを選択する画面)を表示し、ターゲットピッカーで選択した相手に、開発者が作成したメッセージを送信します。このメッセージは、ユーザーが送信したかのように、グループまたは友だちに表示されます。

注意
  • ターゲットピッカーを表示するには、コンソールでシェアターゲットピッカーをオンにしてください。詳しくは、『LIFFドキュメント』の「シェアターゲットピッカーを利用するには」を参照してください。
  • 外部ブラウザで利用する場合は、liff.login()を呼び出して、LINEログインの処理(ウェブログイン)を行ってから、liff.shareTargetPicker()を呼び出します。
ターゲットピッカーの動作環境について
  • ターゲットピッカーは、iOS版とAndroid版のLINE 10.3.0以降でサポートされます。
  • liff.shareTargetPicker()を実行する前に、liff.isApiAvailable()を実行すると、LIFFアプリを起動した環境でターゲットピッカーが使用可能であることを確認できます。

リクエストの例

# 構文

liff.shareTargetPicker(
  messages: Array<Object>
): Promise<void>

# 引数

messages

Objectの配列

必須

メッセージオブジェクト
最大件数:5
Messaging APIの以下のタイプのメッセージを送信できます。

# 戻り値

Promiseオブジェクトが返されます。

ターゲットピッカーが表示されると、Promiseがresolveされます。

ターゲットピッカーが表示される前に問題が発生した場合は、Promise <LiffError>が返されます。LiffErrorオブジェクトについては、「LIFF SDKのエラー」を参照してください。

注意
  • 表示されたターゲットピッカーでユーザーが送信先を選択しなかった場合など、ターゲットピッカーが表示されたあとの状況は検知できません。
  • Promiseがresolveした場合とrejectした場合のコールバック関数内で、alert()を実行すると一部端末で正しく動作しません。

# liff.scanCode()

LINEのQRコードリーダーを起動し、読み取った文字列を取得します。QRコードリーダーを起動するには、あらかじめLINE Developersコンソールで、LIFFアプリにScanQR権限を付与する必要があります。

iOS版LINEバージョン9.19.0以降では使用できません

技術的な問題があり、iOS版LINEバージョン9.19.0以降では、liff.scanCode()undefinedになります。サンプルコードのように、関数の存在を確認してから、使用してください。

注意

liff.scanCode()は、外部ブラウザでは利用できません。

リクエストの例

# 構文

liff.scanCode()

# 引数

なし

# 戻り値

LINEのQRコードリーダーで読み取った文字列を含むPromiseオブジェクトが返されます。

value

String

QRコードリーダーで読み取った文字列

# liff.closeWindow()

LIFFアプリを閉じます。

リクエストの例

# 構文

liff.closeWindow()

# 引数

なし

# 戻り値

なし

# liff.initPlugins()

プラグインを有効化します。

たとえば、Bluetoothプラグインを有効化すると、Bluetoothプラグインが提供するクライアントAPI(liff.bluetooth.*)が使用できます。

リクエストの例

# 構文

liff.initPlugins(pluginList: Array<String>): Promise<void>

# 引数

pluginNames

Stringの配列

必須

プラグインの名前。以下のいずれかの値を指定します。

  • bluetooth
    ※なお、Bluetoothプラグインは、Android版のLINEまたはiOS版のLINE 9.19.0未満の場合のみ、有効化できます。iOS版のLINE 9.19.0以降では 有効化に失敗し、FORBIDDENエラーが返されます。

# 戻り値

プラグインの有効化が成功した場合は、戻り値はありません。

プラグインの有効化に失敗したときは、エラー情報を含むPromiseオブジェクトを返します。

# liff.bluetooth.getAvailability()

iOS版LINEバージョン9.19.0以降では使用できません

技術的な問題があり、iOS版LINEバージョン9.19.0以降では、liff.bluetooth.getAvailability()の提供を一時停止しています。

Bluetoothプラグインが利用できるかどうかを確認します。このメソッドを実行すると、以下の内容が確認されます。

  • チャネルに追加したLIFFアプリのBluetoothサポートの有無

    注:チャネルに追加したLIFFアプリのBLE機能を有効にしていないと、Bluetoothプラグインは有効化できません。

  • スマートフォンのBluetooth設定

  • ユーザーがLINE Thingsの利用規約に同意していること

  • ユーザーがLINEをAndroidで使用している場合は、位置情報の取得権限

注:あらかじめliff.initPlugins()を使用して、Bluetoothプラグインを有効化してください。

リクエストの例

# 構文

liff.bluetooth.getAvailability(): Promise<Boolean>

# 引数

なし

# 戻り値

Promiseオブジェクトが返されます。Promiseオブジェクトには、Bluetoothプラグインが利用できるかどうかを示すBooleanオブジェクトが含まれています。

# liff.bluetooth.requestDevice()

iOS版LINEバージョン9.19.0以降では使用できません

技術的な問題があり、iOS版LINEバージョン9.19.0以降では、liff.bluetooth.requestDevice()の提供を一時停止しています。

連携済みのデバイスをスキャンし、情報を取得します。

フィルターを使って、アドバタイズメントパケットを受け入れるデバイスを制限できます。

注:あらかじめliff.initPlugins()を使用して、Bluetoothプラグインを有効化してください。

リクエストの例

# 構文

liff.bluetooth.requestDevice(options?: RequestDeviceOptions): Promise<BluetoothDevice>;

# 引数

options

Object

任意

フィルターを表すRequestDeviceOptionsオブジェクト。省略したときは、すべてのデバイスからのアドバタイズメントパケットを受け入れます。

# データオブジェクト
# RequestDeviceOptionsオブジェクト

filters

Objectの配列

必須
# LINEBluetoothRequestDeviceFilterオブジェクト

deviceId

String

必須

アドバタイズメントパケットを受け入れるデバイスのデバイスID

# 戻り値

Promiseオブジェクトが返されます。Promiseオブジェクトには、デバイスの情報を示すBluetoothDeviceオブジェクトが含まれています。

# データオブジェクト
# BluetoothDeviceオブジェクト

id

String

必須

デバイスID

name

String

任意

デバイス名

gatt

Object

任意

watchingAdvertisements

Boolean

必須

アドバタイズメントパケットの監視状況(※)

メソッド 戻り値 説明
watchAdvertisements Promise <void> アドバタイズメントパケットの受け入れを開始します。(※)
unwatchAdvertisements void アドバタイズメントパケットの受け入れを停止します。(※)
addEventListener void イベントリスナーを登録します。advertisementreceivedイベント(※)とgattserverdisconnectedイベントに、イベントリスナーを登録できます。
removeEventListener void 登録済みのイベントリスナーを削除します。advertisementreceivedイベント(※)とgattserverdisconnectedイベントに登録したイベントリスナーを削除できます。

※試験的に実装している機能です。これらの機能は予告なく変更、または停止される可能性があります。

# BluetoothRemoteGATTServerオブジェクト

デバイスと通信するには、GATTサーバー(汎用アトリビュートプロファイルサーバー)を表すBluetoothRemoteGATTServerオブジェクトを使用します。

liff.bluetooth.requestDevice()実行後、Promiseがresolveすると、BluetoothDeviceオブジェクトのgattプロパティから、BluetoothRemoteGATTServerにアクセスできます。

device

Object

必須

connected

Boolean

必須

接続している場合はtrue。接続していない場合はfalse

メソッド 戻り値 説明
connect Promise <BluetoothRemoteGATTService> デバイスと接続します。
disconnect void デバイスのGATTサーバーから切断します。
getPrimaryService( serviceUUID: string ) Promise <BluetoothRemoteGATTService> GATTサーバーのプライマリサービスを取得します。serviceUUIDには、128ビットのUUIDを指定します。
注:このメソッドはUUIDを検証しません。UUIDの検証は、characteristicの読み込み、書き込み、通知の開始、通知の停止を実行する際に行われます。
# BluetoothRemoteGATTServiceオブジェクト

BluetoothRemoteGATTServiceオブジェクトは、characteristicを取得するためのオブジェクトです。

device

Object

必須

uuid

String

必須

GATT Service UUID

メソッド 戻り値 説明
getCharacteristic( characteristicUUID: string ) Promise <BluetoothRemoteGATTCharacteristic> characteristicを取得します。characteristicUUIDには、128ビットのUUIDを指定します。
注:このメソッドはUUIDを検証しません。UUIDの検証は、characteristicの読み込み、書き込み、通知の開始、通知の停止を実行する際に行われます。
# BluetoothRemoteGATTCharacteristicオブジェクト

BluetoothRemoteGATTCharacteristicオブジェクトは、デバイスのcharacteristicの読み込み、書き込み、通知の開始、通知の停止を実行するためのオブジェクトです。

service

Object

任意

uuid

String

必須

UUID

value

Object

任意
メソッド 戻り値 説明
readValue Promise <DataView> characteristicの値を読み取ります。
writeValue( value: BufferSource ) Promise <void> characteristicに値を書き込みます。
startNotifications Promise <BluetoothRemoteGATTCharacteristic> characteristic変更の通知を開始します。
stopNotifications Promise <BluetoothRemoteGATTCharacteristic> characteristic変更の通知を停止します。
addEventListener void イベントリスナーを登録します。targetプロパティを含むcharacteristicvaluechangedイベントに、イベントリスナーを登録できます。
removeEventListener void 登録済みのイベントリスナーを削除します。characteristicvaluechangedイベントに登録したイベントリスナーを削除できます。

注:readValue()メソッド、writeValue()メソッド、startNotifications()メソッド、stopNotifications()メソッドは、UUIDとプロパティを検証します。存在しないUUIDやプロパティを指定した場合は、エラーが発生します。

リクエストの例

# イベント

# advertisementreceivedイベント

アドバタイズメントパケットを受信すると、advertisementreceivedイベントが発生します。

注:advertisementreceivedイベントは、試験的に実装している機能です。この機能は予告なく変更、または停止される可能性があります。

device

Object

必須

name

String

任意

デバイス名

rssi

Number

任意

RSSI

manufacturerData

Object

任意

Map<Number, DataView>オブジェクト。会社識別コード(Company Identifier Code)をDataViewオブジェクトにマップしたデータです。

# gattserverdisconnectedイベント

さまざまな理由でBluetooth接続が切断されると、gattserverdisconnectedイベントが発生します。必ずイベントリスナーを登録してください。

リクエストの例

# characteristicvaluechangedイベント

characteristicが変更されると、characteristicvaluechangedイベントが発生します。

# liff.bluetooth.referringDevice

iOS版LINEバージョン9.19.0以降では使用できません

技術的な問題があり、iOS版LINEバージョン9.19.0以降では、liff.bluetooth.referringDeviceの提供を一時停止しています。

LIFFアプリがデバイス経由で起動された場合、liff.bluetooth.referringDeviceに、そのデバイスの情報を示すBluetoothDeviceオブジェクトが設定されます。