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

# プッシュ通知を送信する

> PixelGames で新しいゲームや友達のアクティビティについてプレイヤーに通知しましょう。

export const AiPrompt = ({children}) => {
  return <CodeBlock className="relative block font-sans whitespace-pre-wrap break-words">
      <div className="pr-7">
        {children}
      </div>
    </CodeBlock>;
};

export const pushNotificationPrompt = "Notify a player when a friend beats their high score in PixelGames.";

<AiPrompt>
  {pushNotificationPrompt}
</AiPrompt>

<Frame caption="ロック画面に届く PixelGames の通知。">
  <img src="https://mintcdn.com/replit/WuaQIOfW5oxRlxex/images/pixelgames/mobile/notification.gif?s=1335ca08e398f2ae9a8b31e1a0c3d085" alt="スマートフォンのロック画面に表示される PixelGames のプッシュ通知" data-path="images/pixelgames/mobile/notification.gif" width="1516" height="726" data-path="images/pixelgames/mobile/notification.gif" />
</Frame>

Android はすぐに Expo Go でこれをテストできます。iOS ではまずアプリを
[TestFlight からアップロードしてインストール](/build/mobile-testflight)する必要があります。Apple は、
テスト目的であっても、通知を受け取る前にアプリが Apple に登録されていることを要求しています。

<Steps>
  <Step title="許可を求める">
    iOS と Android はどちらも最初の通知の前に一度プロンプトを表示します。拒否された場合、プレイヤーが
    Settings から再度有効にするまで通知は届きません。
  </Step>

  <Step title="デバイスを登録する">
    Agent がサインインしているプレイヤーのプッシュトークンを登録し、PixelGames がどのデバイスに通知すべきかを
    把握できるようにします。
  </Step>

  <Step title="送信する">
    友達がそのプレイヤーのハイスコアを上回ると通知が発火します。
  </Step>
</Steps>

## テストする

1. プロンプトが表示されたら通知の許可を与えてください。これが承認されるまで PixelGames は何も送信できず、
   プロンプトは一度しか表示されません。
2. Agent に単発のテスト通知を依頼するだけでなく、2つ目のアカウントから友達のハイスコアを上回るなど、
   実際の条件を発生させてください。これにより、スコアの保存、誰に通知するかのチェック、送信という一連の
   流れ全体が機能しているかを確認できます。単に権限が付与されたことだけを確認するのではありません。
3. ロック画面に届くことを確認してから、それをタップして PixelGames が開くことを確認してください。タップする
   ことで、通知が単に表示されるだけでなく、実際にアプリへ戻る経路が機能しているかを確認できます。

これは実機で行ってください。通知はシミュレーターには届きません。セットアップについては
[Expo Go でテストする](/build/mobile-preview-testing)をご覧ください。

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

* **iOS で通知が全く届かない:** [TestFlight](/build/mobile-testflight) からテストしているか確認してください。
  Expo Go は iOS でプッシュ通知を受け取ることができません。
* **プレイヤーが許可を与えたのに何も届かない:** トークンが実際にそのアカウントに紐付けて保存されたか
  確認してください。サインインと通知の設定が別々に行われる場合によくある抜けです。

## 次のステップ

<CardGroup cols={2}>
  <Card title="ハプティクスを追加する" icon="wave-square" href="/ja/build/mobile-haptics">
    通知にハプティックタップを組み合わせましょう。
  </Card>

  <Card title="モバイルアプリで画像を保存する" icon="image" href="/ja/build/mobile-store-images">
    プロフィール写真を App Storage に保存しましょう。
  </Card>
</CardGroup>

## 関連

* [App Store に提出する](/build/mobile-publish-ios)
