> ## Documentation Index
> Fetch the complete documentation index at: https://moengage.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Android でプッシュテンプレートの表示に問題が発生するのはなぜですか？

> Android でプッシュテンプレート通知の見た目が異なる理由を、高さの制約やデバイス間のレイアウト表示の違いを含めて説明します。

プッシュテンプレート通知は、デフォルトの通知とは見た目が若干異なり、表示に関する問題が発生することもあります。

## プッシュテンプレート通知のサイズ

| 通知タイプ | 折りたたみモードでの高さ | 展開モードでの高さ |
| - | - | - |
| ネイティブ通知 (Basic) | 100 dp | \~300 dp |
| カスタム通知  SDK バージョン 11.4.02 未満および Push templates モジュールバージョン 2.4.0 未満 | 64 dp | 256 dp |
| カスタム通知  SDK バージョン 11.4.02 以上および Push templates モジュールバージョン 2.4.0 以上 | 100 dp | 287 dp |

## 高さ 64 dp のプッシュテンプレート

カスタムプッシュ通知のサイズは、[カスタム通知に関する Android ガイドライン](https://developer.android.com/training/notify-user/custom-notification)に準拠しています。

カスタム通知は高さが小さいため、デフォルト通知の高さはカスタマイズされた通知よりも大きくなります。これは、高さが 64 dp を超えるカスタムプッシュ通知が一部のデバイスで失敗していたためです。また、動的レイアウトは実現が難しいため、MoEngage は Android ガイドラインに従ったサイズに高さを制限しました。

展開モードでは、画像に使用できる領域は次のとおりです。

| 使用可能な画像の高さ | ボタンの有無 |
| - | - |
| 192 dp | なし |
| 152 dp | あり |

展開モードではスペースが限られているため、ネイティブ通知では問題なく表示される画像でも切り取られる場合があります。

### 高さ 100 dp のプッシュテンプレート

* 表示領域が広くなった新しい改良版の Push templates は、SDK バージョン 11.4.02 以上および Push templates モジュールバージョン 2.4.0 以上で利用できます。
* 改良版の通知の見た目は、フォントサイズ、間隔、パディングの点で Basic 通知と同様です。
* MoEngage はアプリ名と色のカスタマイズをサポートしています。MoEngage はさらに多くの相手先ブランド製造業者 (OEM) をテストしており、OEM をホワイトリストに登録していきます。
* 100 dp の通知は、ホワイトリストに登録された OEM でのみ機能します。これは、主に OEM がオペレーティングシステム上に施すさまざまなスキンのカスタマイズにより、100 dp のカスタマイズがすべてのデバイスで正しく表示されるわけではないためです。現時点では、Google、OnePlus、Samsung、Oppo、Vivo、Motorola がホワイトリストに登録されています。MoEngage はこのリストに OEM を追加する作業を進めています。
* さらに、ワークスペースレベルで OEM をホワイトリストに登録する仕組みも用意されています。つまり、お客様側で十分な検証を行ったうえで、OEM を追加でホワイトリストに登録したり、すでにホワイトリストに登録されている OEM をブラックリストに登録したりできます。ホワイトリストに登録する OEM のセットを変更するには、MoEngage のカスタマーサクセスマネージャー (CSM) またはサポートチームにお問い合わせください。
* ホワイトリスト登録の方針:
  * 通知の動作はスキンのバージョンによって変わるため、各 OEM について最新 3 つのスキンバージョンをテストしています。これにより、最新 3 つの Android バージョン (Android 11、10、9) がカバーされます。Android 12 は通知レイアウトが大きく異なるため、検討対象に含まれていません。
  * 最新 3 つのスキンバージョンすべてで 100 dp が正しく表示される場合、MoEngage はその OEM をホワイトリストに登録します。それ以外の場合は、OEM ごとに個別に検討します。
  * MoEngage がデバイスまたは OEM で 100 dp をサポートしていない場合は、64 dp のカスタムプッシュ通知が表示されます

画像を最適に表示するために、すべての通知で次のガイドラインに従ってください。

* 使用するテンプレートで推奨されるアスペクト比を維持してください。この比率はテンプレートによって異なり、同じテンプレート内でも通知にボタンが含まれるかどうかによって異なります。たとえば、Basic 通知では 2.9:1 / 2.8:1、テキストオーバーレイ付き画像バナーテンプレートでは 1.4:1 / 1.3:1 です。キャンペーンビルダーでは、画像フィールドの下のヘルパーテキストに推奨比率が表示されます。テンプレートごとの一覧は [Push Templates](/docs/ja/user-guide/campaigns-and-channels/mobile-push/create/push-templates) を参照してください。\
  画像が推奨アスペクト比に近い場合、切り取りは最小限に抑えられます。ただし、このアスペクト比に従った画像でも、一部のデバイスでは切り取りが発生する場合があります。これは次の理由によるものです。
  * Android ではデバイスのサイズがさまざまであるため。
  * 一部の OEM が独自のカスタマイズを追加しているため。例: RedMi デバイスでは、プッシュ通知の周囲にパディングが追加されるため、プッシュ通知と画像がさらに切り取られます。
* コンテンツが中央揃えになるように画像を作成してください。\
  これにより、余白部分で切り取りが発生しても、メインのコンテンツが切れることはありません。

<img src="https://mintcdn.com/moengage/t9d2bz7zij1iE1iP/images/moengage_9f2789.png?fit=max&auto=format&n=t9d2bz7zij1iE1iP&q=85&s=e7e8633c5efa54a2fff7cac57d459699" alt="mceclip6.png" width="1008" height="438" data-path="images/moengage_9f2789.png" />

## ユーザーに背景色のないスタイル付きプッシュ通知が届く

一部のユーザーに、HTML コンテンツを含むものの背景色のないプッシュ通知が届きました。この問題の考えられる原因は次のとおりです。

次の要素を含むプッシュテンプレート通知を設定した場合:

* HTML テキスト (テキストを太字、斜体、下線、取り消し線に設定したか、テキストの色を追加した場合) および
* 背景色
* 画像

SDK は次の順序で通知を表示します。

* HTML テキストフィールドとアプリアイコンを含む Basic プッシュ通知を表示します。
* 次に、SDK は背景色を含むカスタムレイアウトの描画を試みます。画像を設定している場合、SDK は並行して画像のダウンロードを試みます。

SDK が通知全体を表示するために与えられる時間は約 10 秒しかないため、インターネット接続の不良やその他のネットワークの問題により、背景の表示、画像の表示、またはその両方が失敗することがあります。両方が失敗した場合、スタイル付きテキストのみで背景色のないプッシュ通知が表示されます。

### 背景色の表示失敗による影響

* テキストの色を白に設定した場合、デバイスのテーマが *ライトモード* に設定されているユーザーには、次のような空白の通知が表示されます。
  <img alt="mceclip0.png" src="https://mintcdn.com/moengage/QVZKszouQuxXOzFr/images/moengage_196c23.png?fit=max&auto=format&n=QVZKszouQuxXOzFr&q=85&s=6d2ce6562c26c90341f8b5798e764f83" style={{ width:"72%" }} width="393" height="161" data-path="images/moengage_196c23.png" />
* テキストの色を *黒* に設定した場合、デバイスのテーマが *ダークモード* に設定されているユーザーには、次のような空白の通知が表示されます。
  <img alt="mceclip1.png" src="https://mintcdn.com/moengage/-X0av6ek9AEOUtsy/images/moengage_c7e271.png?fit=max&auto=format&n=-X0av6ek9AEOUtsy&q=85&s=df6291c1d19f88db45d687b7ff1c6cb2" style={{ width:"75%" }} width="365" height="139" data-path="images/moengage_c7e271.png" />

そのため、MoEngage では次のことを推奨しています。

* 可能な限り、明るい背景と暗い背景の両方に対してコントラストのあるテキストの色を使用してください。
* MoEngage ダッシュボードでキャンペーンを作成する際は、ダークモードとライトモードの両方でプレビューを確認し、どちらのモードでも通知が正しく表示されることを確認してください。

## ダークモードでの色の反転 (デバイス固有の問題)

スタイル付きプッシュを送信すると、ダークモードで一部の色が反転することがあります。これは Android 10 を搭載した一部の Oppo デバイスでのみ確認されています。これは ColorOS (OPPO が開発したオペレーティングシステム) のバグが原因であり、MoEngage の対応範囲外です。

## パーソナライゼーションの失敗

テンプレート通知とバックアップ通知の両方をパーソナライズしたものの、パーソナライゼーションのフォールバックを追加していないシナリオを考えてみましょう。この場合、テンプレートまたはバックアップのいずれかでパーソナライゼーションが失敗すると、通知はどのユーザーにも送信されません。これは、テンプレートとバックアップが 1 つのペイロードの一部とみなされ、パーソナライゼーションのフォールバックがないため、失敗時にユーザーに送信する代替メッセージが MoEngage にないためです。

この問題を回避するには、メッセージにパーソナライゼーションのバックアップを追加してください。パーソナライゼーションの失敗の詳細については、[Common Personalization Errors and FAQs](/docs/ja/user-guide/campaigns-and-channels/getting-started/message-personalization/common-personalization-errors-and-faqs) を参照してください。
