# \[Android]アプリ内メッセージを表示する

アプリケーション内にメッセージ（ダイアログ等）を表示したい場合は、アプリ内メッセージ機能を利用することで実現可能です。

アプリ内メッセージは、`inappmessaging` モジュールを導入することで利用可能です。

アプリ内メッセージは、SDKから送信したイベントをトリガーに配信され、その後SDKにより自動的にアプリケーション上に表示されます。

{% hint style="warning" %}
**InAppMessaging 2.23.0以降で利用可能なisEdgeToEdgeEnabledオプションについて**

Android環境においてEdge to Edgeを有効化する場合には、isEdgeToEdgeEnabledオプションを有効化することを推奨しています。

以下のドキュメントも合わせてご確認ください。

* [targetSdkVersion 35以降のAndroid環境におけるEdge to Edge対応についての注意事項](/app-faq/notes-for-android-environments-with-target-sdk-version-35-later.md)
* [AndroidのtargetSdk 35以降でのEdge to Edge対応と、InAppMessaging 2.23.0以降で利用可能なisEdgeToEdgeEnabledオプションについて](/app-faq/about-android-isedgetoedgeenabled-option.md)
  {% endhint %}

## 導入手順

アプリの `build.gradle (app)` を任意のエディタで開き、`dependencies` ブロックに `inappmessaging` モジュールを追加します。

{% code title="build.gradle" overflow="wrap" %}

```groovy
dependencies {
  implementation 'io.karte.android:inappmessaging:2.+'
}
```

{% endcode %}

## 実装手順

アプリ内メッセージを表示する上で、アプリ側の実装は不要です。\
一方でアプリケーション側から細かい制御を行いたい場合は実装が必要になる場合もあります。

{% hint style="info" %}
**アプリ内メッセージの表示を制御する**

アプリ側から表示を制御したい場合は、[こちら](/android-sdk-appendix/appendix-iam-control-android-sdk.md) をご覧ください。
{% endhint %}

{% hint style="info" %}
**アプリ内メッセージ上でのリンククリックをトリガーにアプリ内の特定画面に遷移させる**

アプリ内メッセージ上でのリンククリックをトリガーにアプリ内の特定画面に遷移させたい場合は、カスタムURLスキームを処理するための実装を事前に行う必要があります。\
詳細については、[こちら](/android-sdk-appendix/appendix-iam-link-control-android-sdk.md) をご覧ください。
{% endhint %}

## 動作確認

1. イベントを送信処理を実装\
   接客サービスの配信トリガーとして機能するイベントを実装します。\
   イベントの送信については、 [イベントを送信する](/android-sdk/tracking-android-sdk.md) をご覧ください。
2. 接客サービスを作成\
   管理画面上で接客サービスを作成します。\
   接客サービスの作成方法については、[接客サービス作成の流れ](https://support.karte.io/post/4yOwCoZkdoPZwpFRvSrkwP) をご覧ください。
3. アプリケーションで確認\
   アプリケーションを起動し、1. で実装したイベントの送信が行われる操作を行い、2. で設定した接客サービスが配信・表示されることを確認します。

## トラブルシューティング

アプリ内の他の要素と表示が重複する、隠れてしまうような場合には、[Windowの表示レベル](https://app.developers.karte.io/android-sdk/pages/Dr6DIS1fXSM1eHNgIlOC#windowの表示レベル)に従い適宜アプリ側での設定が必要です。

アプリ内メッセージが表示されない場合は、[KARTE for App接客が配信されない場合のチェックリスト](https://support.karte.io/post/7FZg4MZoeexYD9dJMi2r38) を参考にしてください。

**What’s Next**

アプリ内メッセージについて理解を深めるために、以下のドキュメントも併せてご覧ください。

* [アプリ内メッセージの表示の仕組み](/android-sdk-appendix/appendix-iam-spec-android-sdk.md)
* [アプリ内メッセージが非表示となる条件](/android-sdk-appendix/appendix-action-hidden-condition-android-sdk.md)
* [アプリ内メッセージの表示を制御する](/android-sdk-appendix/appendix-iam-control-android-sdk.md)
* [アプリ内メッセージのリンクを制御する](/android-sdk-appendix/appendix-iam-link-control-android-sdk.md)
* [アプリ内メッセージの状態変化を検知する](/android-sdk-appendix/appendix-iam-state-detection-android-sdk.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://app.developers.karte.io/android-sdk/iam-android-sdk.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
