Amazon Fire TV のよくある質問(開発者向け)

よくある質問 (FAQ) (Amazon Fire TV)

アプリ全般に関する問題

Q: 自分が作ったアプリをAmazon Fire TVプラットフォームに申請するにはどうすればよいでしょうか?
Amazon Fire TV端末向けのアプリを申請するには、Amazon開発者ポータルでアカウントを作成し、ポータルからアプリを申請します。

すでにAmazonでアプリを公開済みである場合は、Amazon Fire TV用に別のバイナリAPKを追加してアプリを更新してください。 詳細については、Device Targetingの使用を参照してください。

Q: 私が開発したアプリは、Amazon Fire TVプラットフォームで動作するでしょうか?
開発したアプリが、Amazon Fire TV端末の仕様に適合している必要があります。端末と機能の仕様について詳しくは、端末の仕様を参照してください。

Amazonアプリストアのコンテンツポリシー要件にアプリが準拠していることが必要です。またアプリをご自身でテストし、問題が見つかった場合はアップデートを申請することをお勧めします。

Q: 自分のアプリがAmazon Fire TV端末で実行されるかどうかを確認するにはどうすればよいでしょうか?
機能の中にamazon.hardware.fire_tvが存在するかどうかを確認します。Fire TVの具体的な機種を調べる必要がある場合は、モデルの番号とパターンを調べてください。ただし、必ずamazon.hardware.fire_tv機能のフォールバックを含めておくようにします。詳細については、Amazon Fire TV端末を識別するを参照してください。
Q: テストのためにアプリをAmazon Fire TVにサイドロードすることはできますか?
はい。できます。Android Debug Bridge (ADB) をご利用ください。詳細については、Amazon Fire TV用アプリとゲームを開発するための準備を参照してください。
Q: 開発者向けにAmazon Fire TVのテスト端末は提供されていますか?
開発者向けのテスト端末は、Amazonでは提供していません。

Amazon Fire TV端末は、米国英国ドイツのAmazonリテールサイトで購入いただけます。国ごとの販売状況については、商品詳細ページを参照してください。

Q: Amazon Fire TVプラットフォームでは、具体的にどのような機能がサポートされていますか?
端末と機能の仕様について詳しくは、端末の仕様を参照してください。Fire TVはAndroidをベースにしているため、Androidで実行できることはFire TVでもほぼすべて実行できます。Fire OSには、Fire OS 5とFire OS 6という2つのバージョンがあります。Fire OS 5はAndroid 5.1 (Lollipop、APIレベル22) を、Fire OS 6はAndroid 7.1 (Nougat、APIレベル25) をベースとしています。詳細については、Fire OS 6で動作するAmazon Fire TV端末を開発するを参照してください。また、Fire TVはGoogleサービス (Googleマップ、Googleアプリ内課金など) に対応していませんのでご注意ください。Amazon SDKで同等のサービスを利用できます。詳細については、Fire TV開発とAndroid TV開発の違いをご覧ください。
Q: Fire TV対応アプリを迅速に開発するには、どのテンプレートを使うとよいですか?
Fire App BuilderFire TV向けウェブアプリスターターキット (WASK) の2種類のテンプレートをご利用いただけます。Fire App BuilderはアプリのフレームワークとしてJavaベースのAndroidを使用し、WASKではHTML、CSS、JSといったウェブ技術を使用します。両者の詳細な比較については、Amazon開発フレームワークの比較を参照してください。
Q: 自分が作ったアプリをAmazon Fire TVプラットフォームで宣伝してもらうにはどうすればよいでしょうか?
アプリのマーケティングを参照してください。
Q: Amazon Fire TVプラットフォームに関する情報はどのようにして入手できますか?
各Fire TV端末のハードウェア、ソフトウェア、メディアの仕様に関する詳細については、Fire TV端末の仕様を参照してください。
Q: アプリはどのような状況で一時停止しますか? また、一時停止の動作をどのように実装すればよいですか?
アプリが一時停止するのは、Fire TVリモコンまたはAmazon Fireゲームコントローラーのマイク (音声認識ボタン) か [ホーム] のいずれかのボタンが押されたときです (リモコン入力) を参照してください)。[バック] ボタンが押されたときも、現在のアクティビティが一時停止します。この場合、スタック上の前のアクティビティが再開されます。再開されるアクティビティは、一時停止されたアプリのものではないことがあります。

一時停止の動作を処理するには、ほかのAndroidアプリと同様に、アクティビティにonPause()メソッドを実装します。 onPause()メソッドでは、ユーザーの状態または場所を保存して、アプリが再開したときにユーザーの位置が一時停止前と同じになるようにしてください。

また、メディアアプリでは、次の要件を満たす必要があります。

  • ビデオを再生するアプリは再生を一時停止し、一時停止状態になったらすぐにデコーダーなどのすべてのメディアリソースを解放する必要があります。これは、これらの限りあるリソースがハードウェアベースであり、メモリを大量に消費するためです。詳細については、MediaPlayerをリリースするMediaPlayer.release()を参照してください。
  • オーディオを再生するアプリは、一時停止しても再生を継続することは許可されますが、他のアプリによって要求された場合は、オーディオフォーカスを放棄する必要があります。詳細については、「 Audio Focus」を参照してください。
Q: デフォルトのウェブブラウザで広告を開くことはできますか?
Amazon Fire TV にはブラウザアプリは含まれていないため、URL (広告など) は一切機能しません。アプリにウェブページへのリンクを含める必要がある場合は、Android の WebView を使用できます。ただし、AndroidのWebViewを使用する場合は、コントローラーからの入力イベントを処理するために、アプリで独自のCookieや認証を管理する必要があります (AndroidのWebViewはD-padナビゲーションをサポートしますが、レイアウトとナビゲーションの見直しが必要になることがあります)。

Android の WebView を実装する際のヒントについては、ブログ投稿「Using WebViews on Tablets with HD Screens (HDスクリーンのタブレットでWebViewsを使用する)」を参照してください。この投稿はタブレットに関するものですが、アドバイスはテレビにも適用できます。

Q: Amazonアプリ内課金APIをFire TV対応アプリで使用できますか?
はい。Amazonのアプリ内課金 (IAP) API は、Fire TV端末、Fire TVのリモコン、Fire TVゲームコントローラーで連携して動作します。ウェブアプリのトランザクションをプレビューするには、App Testerを使用してください。
Q: Amazon Device Messaging (ADM) をFire TV対応アプリで使用できますか?
Amazon Device Messagingを使用して、プッシュメッセージやその他のデータを受け取ることができます。
Q: Amazon Maps APIをFire TV対応アプリで使用できますか?
Amazon Fire TVは位置情報サービスに対応していないので、現時点でAmazon Maps APIはサポートされていません。
Q: Amazonモバイル広告APIをFire TVアプリで使用できますか? 
現時点で、Amazonモバイル広告APIはFire TVでサポートされていません。
Q: Amazonアプリストア内にあるアプリの詳細ページにリンクできますか?
はい。Amazon アプリストアのディープリンクは、他のアプリと同様に Fire TV アプリでも機能します。ディープリンクの詳細については、アプリ内からAmazonにリンクするを参照してください。ただし、アプリを使ってユーザーに評価を依頼することはしないでください。ユーザーには、アプリの概要の画面からアプリを評価してもらいます。
Q: オンスクリーンキーボードをテンキーパッドに変更するにはどうすればよいですか?
標準の Android メカニズムを使用することにより、すべての EditText ウィジェットに対して IME (入力方式エディター) を構成できます。XMLでは、android:inputType="number"を使用します。
<EditText android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/edittext" android:inputType="number"/>
Q: Amazon Fire TVでスクリーンショットを取得するにはどうすればよいですか?
詳細については、Fire端末でスクリーンショットを撮るを参照してください。
Q: Googleのアプリ内課金テクノロジーを使用しているのですが、Amazon Fire TVプラットフォームで動作するでしょうか?
いいえ。Googleのアプリ内課金APIなどのサービスは、Google Mobile Servicesにアクセスする必要があり、Amazon Fire TVプラットフォームでは動作しません。アプリ内課金に関して、Amazonでは独自のアプリ内課金APIを提供しています。開発者の皆さまが開発するアプリでは、このAPIを通じてデジタルコンテンツやサブスクリプションを簡単に提供することができます。詳細については、Fire TV開発とAndroid TV開発の違いをご覧ください。
Q: Amazon Fire TVまたはFire TV Stick用のアプリをドイツやオーストリアで配布する場合、他に基準はありますか?
はい。Amazonでは、Amazon Fire TVやFire TV Stick端末、SDメモリカード、接続されている外部ストレージ (該当する場合) に対して何らかのビデオコンテンツやオーディオコンテンツを格納する機能 (または複製、録音、ダウンロード、保存など同等の機能) が備わっているアプリを、Amazon Fire TVまたはFire TV Stick用としてドイツやオーストリアで配布することを禁止しています。そのような機能が含まれているとAmazonが判断したアプリは、ドイツやオーストリアでは公開されません。

Fire OS

Q: Fire OSでは、Android TVとv17 Leanback Libraryがサポートされていますか?
Fire OS 5とFire OS 6では、Android TV機能とLeanback Libraryの両方がサポートされています。ただし、Leanback LibraryのSearchFragmentクラスを利用した音声認識はサポートされていません。詳細については、Fire TVに検索機能を実装するを参照してください。

メディアと DRM

Q: Fire TVでは、どのようなサードパーティ製のメディアプレーヤーSDKがサポートされていますか?
Android メディア再生 API および暗号化 API を実装しているメディアプレーヤー SDK であれば、Amazon Fire TV プラットフォームで機能します。 そのようなSDKの例として、Amazon Port of the ExoPlayerAndroid MediaPlayerVisualOn OnStream MediaPlayer+ SDKNexStreaming NexPlayer SDKがあります。詳細については、メディアプレーヤーを参照してください。カスタムのメディアプレーヤーを使用している場合は、オーディオとビデオの同期を参照してください。
Q: Microsoft PlayReady DRMで暗号化されたメディアを再生する機能を実装する場合、どのようなオプションがありますか?
Amazon Fire TVプラットフォームには、保護されたメディアを再生するためのAndroidMediaCryptoクラスがサポートされています。PlayReadyをサポートするサードパーティ製のメディアプレーヤーSDKを使用することも可能です。各Fire TV端末がサポートしているPlayReadyのバージョン情報については、Fire TV端末の仕様にあるメディアの仕様表を参照してください。
Q: Amazon Fire TVでは、暗号化されたオーディオを含むPlayReadyコンテンツはサポートされますか?
Fire TVでサポートされるのは、暗号化されたビデオとクリア (暗号化されていない) オーディオを含むPlayReadyコンテンツのみです。Widevine DRMもサポートされます。詳細については、Fire TV端末の仕様を参照してください。暗号化されたオーディオとビデオの両方を含むコンテンツを再生する方法の詳細については、こちらからお問い合わせください。
Q: Dolby DigitalオーディオをFire TV端末で復号化する方法は?
Fire TV と Fire TV Stick のどちらにも、Dolby Digital (AC3) および Dolby Digital Plus (eAC3) の復号化機能が含まれています。Fire TV (第3世代) はDolby Atmos (EC3_JOC) もサポートしています。これらの形式は、標準のAndroidメディアプレーヤーライブラリを使用して再生できます。Amazon Fireタブレット用のDolbyAudioProcessing SDKは、Fire TV端末でサポートされない (または必要ない) ことに注意してください。Dolby再生の詳細については、Dolbyとの連携に関するガイドラインを参照してください。
Q: 端末では、ファームウェアとOSを検証するためのセキュアブートがサポートされますか?
はい。
Q: OSはアプリの署名確認を強制しますか?
はい。
Q: 出力はHDMI上のセキュアチャネルを通してHDCP保護されますか?
はい。
Q: Amazon Fire TVでは、カスタマイズ可能なクローズドキャプション (CEA-708) はサポートされますか?
現時点では、Fire TV でのクローズドキャプションサポートにはプラットフォームレベルの制限があります。メディアアプリでは、サードパーティ製のメディア再生SDKまたは実装したアプリそのものを通じて視聴者が字幕をカスタマイズできるUIを備えている必要があります。Fire App Builderのクローズドキャプション機能に関する詳細は、Fire App Builderに関するよくある質問を参照してください。
Q: Amazon Fire TVでは、クローズドキャプションにどのようなフォントを使用できますか?
Amazon Fire TV で利用できるプラットフォームフォントは限られています。CEA-708 で定義されているスタイルカテゴリのそれぞれについて、独自のフォントファイルのライセンスを取得し、そのフォントファイルを埋め込む必要があります。

メディアの再生

Q: メディアの再生に関してリソースとメモリを節約するうえでのベストプラクティスを教えてください。

Amazon Fire TVでメディアの再生に使用されるリソースはハードウェアベースで、メモリに限りがあるため、アプリ側の適切な動作が要求されます。使い終えたメディアリソースはアプリ側で確実に解放してください。

具体的には、ビデオを再生するアプリは、再生を一時停止し、デコーダーなどのすべてのメディアリソースをonPause()メソッドに含めるなど)。詳細については、MediaPlayerをリリースするMediaPlayer.release()を参照してください。

アプリがビデオを再生する際にAndroid WebView (および<video>HTMLタグ) を使用する場合、現時点では、アプリが一時停止または停止してもハードウェアメディアリソースが解放されません。この問題を回避するには、onPause()要素とonStop()メソッドを実装する際にプロセスを強制的に終了して、これらのリソースを明示的に解放してください。

public void onStop() {
   super.onStop();
   android.os.Process.killProcess(android.os.Process.myPid());
}

詳細については、以下を参照してください。

Q: バックグラウンドで音楽を再生するアプリを作成しました。このアプリが一時停止すると、オーディオ再生が停止するのはなぜでしょうか?また、このアプリを起動しても、他のアプリのオーディオが再生され続けるのはなぜですか?
そのアプリでは、オーディオフォーカスが正しく管理されていません。アプリは再生を開始したときに、オーディオフォーカスを要求し、また、メディアボタンイベントのレシーバーとして自身を登録する必要があります。アプリでの再生が終了した場合や、ほかのアプリがオーディオフォーカスを要求した場合、アプリがオーディオフォーカスを放棄します。そのとき、メディアボタンイベントのレシーバーからアプリ自体を登録解除する必要があります。次の例をご覧ください。

詳細については、以下を参照してください。

Q: 音楽アプリをバックグラウンドで実行して音楽を再生しているときに、不規則に停止するのはなぜでしょうか?
音楽再生アプリをフォアグラウンドサービスとして実行してください。バックグラウンドサービス (デフォルト) は、リソースが少なくなると、システムによって自動的にシャットダウンされます。詳細については、AndroidガイドでMedia PlaybackstartForeground()メソッド (Serviceクラス内) をご確認ください。
Q: TVの電源が消されたり、HDMIケーブルが抜かれたりした場合には、どのように対処すべきでしょうか?
HDMIが切断した場合の対処方法は、オーディオとビデオで異なります。詳細については、HDMIイベントの処理を参照してください。
Q: メディアを再生している際に、端末がスタンバイまたはスリープモード (スクリーンセーバー) に遷移するのを防止するにはどうすればよいですか?
メディアの再生中にAmazon Fire TVとテレビの両方で動作を維持するには、アクティビティに対するKEEP_SCREEN_ONフラグを設定するか、PowerManagerからWakeLockを取得します。オーディオまたはビデオの再生を行っていないときには、すべてのWakeLockをアプリで解放して、端末とテレビがスリープモードに遷移し、電力消費が少なくなるようにする必要があります。WakeLockの使用に関する詳細は、PowerManager および PowerManager.WakeLockクラスを参照してください。

アプリがオーディオを再生する際にアプリのPartialWakeLock (PARTIAL_WAKE_LOCK) が設定されると、テレビはオンの状態を維持し、端末はアイドルになるとスリープモードに遷移します (スクリーンセーバーが表示されます)。これは、モバイル端末でのPartialWakeLockの動作と異なります。モバイル端末では、CPUはオンに維持され、画面は消灯します。Amazon Fire TVの動作は、HDMI経由でオーディオを再生する場合に、テレビがオンである必要があるためです。繰り返しになりますが、アプリがオーディオの再生を行っていないときには、WakeLockを解放して、テレビがスリープモードに遷移できるようにします。

SCREEN_BRIGHT_WAKE_LOCKSCREEN_DIM_WAKE_LOCKフラグを設定しても、端末の動作に影響はありません。

Q: 端末がスリープモード (スクリーンセーバーがオン) に遷移したことを検知するにはどうすればよいですか?
スリープモードは Android の機能です。テレビがオンのときにAmazon Fire TVがスリープモードに遷移すると、スクリーンセーバーが表示されます。端末がスリープモードに遷移したか、スリープモードから別のモードに遷移したことを検知するには、Intent.ACTION_DREAMING_STARTED要素とIntent.ACTION_DREAMING_STOPPED要素の登録を行います。

音楽アプリではないアプリでオーディオを再生する場合、端末がスリープモードに遷移したときには、オーディオの再生を一時停止する必要があります。

Q: ビデオの再生にAndroidのWebView<video>HTMLタグを使用できますか?
答えは「はい」ですが、制限があります。現時点では、アプリが一時停止または停止したときに、ハードウェアメディアリソースはシステムによって解放されません。この問題を回避するには、onStop()メソッドを実装して、アプリのプロセスを明示的に停止させます。
public void onStop() {
super.onStop();
android.os.Process.killProcess(android.os.Process.myPid());
}

この問題によって、アプリのユーザーエクスペリエンスとナビゲーションが不安定になることがあります。端末でメディアを再生する方法としては、サードパーティ製のメディアプレーヤーSDKの使用が推奨されます。

Q: アプリで 4K Ultra HDビデオを再生できますか?

はい。Fire TV (第2世代、第3世代) とFire TV Stick (第2世代) が4K対応TVに接続されていれば、4K Ultra HDビデオを再生できます。Fire TV (第1世代) とFire TV Stick (第1世代) では4Kビデオを再生できません。詳細については、Fire TV端末の仕様を参照してください。

4Kのコンテンツを再生する前に、(1) Fire TV端末が4Kをサポートしているかどうかと、(2) 接続されているテレビが4Kに対応しているかどうかをアプリ側でチェックする必要があります。4Kモードスイッチを機能させるために、Amazon 4K拡張ライブラリが開発されています。

Ultra HDビデオに対応したアプリは、必要なユーザーエクスペリエンスを確実に満たすために、Amazonによって認定されます。通常、認定は数週間以内に完了します。詳細については、4K Ultra HDビデオを再生するを参照してください。

コントローラ

Q: Amazon Fire TVゲームコントローラーには、以前のバージョンにはあったメディアボタンがありません。メディアを再生するにはどうすればよいですか?
Amazon Fire TV では、アナログスティック ([Play/Pause]) を押したとき、および左側のショルダー ([Rewind]) ボタン (L1) や右側のショルダー ([Fast Forward]) ボタン (R1) を押したときに、メディア入力イベントが生成されます。これらのボタンを使用しないアプリまたはゲームでは、ユーザーがメディアの再生をバックグラウンドでコントロールできるように、これらのボタンイベントをアプリでキャプチャや破棄などの処理の対象にしないでください。

Amazon Fireゲームコントローラーのメディアボタンをアプリで他の目的に転用している場合、新しいAmazon Fire ゲームコントローラーのユーザーは、ボタンがなければその機能を使用できません。両方のゲームコントローラーに共通するボタンを使用するようにアプリを更新することや、画面上に表示されるヒントを更新することを検討してください。

Q: Amazon Fire TVゲームコントローラーから音量制御を行うには、どうすればよいですか?
Fire TV (第3世代) を除くFire TV端末では、Amazon Fireゲームコントローラーのヘッドホンジャックにオーディオをストリーミングできます (現行世代のコントローラーのみ)。音量制御には、左側/右側のトリガーボタン (L2/R2) ボタンを使用します。

音量制御はシステム機能であり、アプリの他のボタンにマップできません。トリガーボタンを使用しないアプリまたはゲームでは、ユーザーがメディアの再生をバックグラウンドでコントロールできるように、これらのボタンイベントをアプリでキャプチャや破棄などの処理の対象にしないでください。これらのボタンをアプリまたはゲームで他の目的に転用している場合、システムランチャーから音量を制御できることを、画面上に表示されるヒントで知らせることを検討してください。

Q: アプリでFire TV音声認識リモコンの [マイク] ボタンをオーバーライドできますか?
[マイク] ボタンは、一時的オーディオフォーカスを要求してシステム全体の音声機能を起動するもので、オーバーライドすることはできません。アプリはこのオーディオフォーカス変更イベント (AUDIOFOCUS_LOSS_TRANSIENT) やその他のオーディオフォーカスイベント (AUDIOFOCUS_LOSS要素とAUDIOFOCUS_LOSS_TRANSIENT_CAN_DUCK要素) を処理する必要があります。これは、各種アプリ (音声に限らず) がさまざまなオーディオフォーカスをリクエストする可能性があるためです。つまり、すべてのオーディオフォーカスのユースケースが適切に処理される必要があります。詳細については、音声検索によるオーディオフォーカス処理を参照してください。
Q: [メニュー] ボタンにはどのような機能がありますか? また、アプリ内でオーバーライドできますか?
デフォルトでは、[Menu] ボタンは Android コンテキストメニューを起動し、画面の中央にメニューアイテムのリストを表示します。[メニュー] ボタンをオーバーライドして、独自のカスタムメニューユーザーインターフェースを提供するなどの目的に使用できます。

メニューアイテムが 1 つだけ必要な場合は、単純な切り替えスイッチ (たとえば、クローズドキャプションのオン/オフ) として [メニュー] ボタンを使用し、この機能をユーザーに知らせるためにヒントを画面に表示することもできます。

Q: コントローラーを接続、切断、またはスリープ状態にすると、アクティビティが初めから再起動するのはなぜですか?
これらのイベントは、Android によって実行時設定変更として処理されます。これらのイベントをアプリで無視するには、AndroidManifest.xmlを修正してandroid:configChanges属性を追加し、keyboardkeyboardHiddennavigationのキーを加えます。
<activity android:name="MyActivity"
android:configChanges="keyboard|keyboardHidden|navigation">

詳細については、Androidガイドの実行時の変更の処理を参照し、configChanges属性の情報とともに、必要に応じて、アプリの設定変更を処理する方法をご確認ください。

Q: ゲームコントローラーの切断をアプリまたはゲームでどのように処理すればよいですか?
Amazon Fire ゲームコントローラは、5 分を超えてアイドルであるかスティックが同じ角度に保持されていると、バッテリー残量を維持するためにシステムから切断される可能性があります。他のコントローラーも、アイドルであるか、バッテリー残量が無くなると切断される可能性があります。コントローラー切断イベントを処理するには、AndroidのOnInputDeviceRemovedリスナーを使用します。コントローラーが利用できないことをユーザーに知らせるために、ゲームを一時停止するか、またはダイアログを表示することを検討してください。

Fire TV Stick

Q: Amazon Fire TVとFire TV Stickの違いは何ですか?
Fire TV端末の仕様に、すべてのFire TV端末の仕様が記載されています。Fire TV端末の名称に関する詳細については、Fire TV端末の命名規則を参照してください。
Q: Fire TV対応アプリをAmazon Fire TV Stickに適応させるにはどうすればよいですか?
Amazon Fire TVとFire TV Stickはどちらも同じ一般的なプラットフォームを実行します (Fire OSの概要を参照してください)。ただし、Fire TV Stickではハードウェアの条件が厳しいので、パフォーマンスと安定性に関してアプリを最適化する必要があります。ハードウェアアクセラレーションパフォーマンスに関する Android のベストプラクティスに従うことが重要です。特に、OpenGLとテクスチャについては注意が必要です。各Fire TV端末の仕様に関する詳細については、Fire TV端末の仕様を参照してください。
Q: プログラミングの面からFire TV Stick端末を識別するにはどうすればよいですか?
機能の中にamazon.hardware.fire_tvという機能があるかどうかを確認することで、Fire TV端末を識別できます。Fire TV Stickに絞って確認する場合は、MODELがAFTMAFTTのいずれであるかを調べてください。詳細については、Amazon Fire TV端末を識別するを参照してください。
Q: アプリの一部の画像/背景が表示されないか、画像の代わりに灰色のボックスが表示されます。
この現象は、通常、ビットマップ画像またはテクスチャが非常に大きい場合に発生します。Fire TV Stickは、最大 2048 x 2048 のテクスチャをサポートします。アプリにこの問題がある場合は、次のようなエラーがログに表示されます。
W/OpenGLRenderer( 8941): Bitmap too large to be uploaded in a texture (3840x2160, max=2048x2048)

また、Fire TV用の画像は、drawables-xhdpi/フォルダーに格納される必要があります (drawables/フォルダーではありません)。デフォルトのドローアブルをプラットフォームに応じて拡大すると、テクスチャ制限を超える大きな画像が作成されることがあります。