- リダイレクトと画像ファイル拡張子および
httpsプロトコルのないURL(iOSとAndroidはデフォルトですべてのネットワークリクエストをhttpsにする必要があるため、httpURLはほとんどのアプリで機能しません) - デバイス上の不安定なネットワーク接続、または必要な帯域幅を処理できない画像サーバー
setLogLevelメソッドをWARNまたはVERBOSEログとともに使用すると、画像のダウンロードに関連する特定のエラーを確認できます:
Could not download image!Encountered an error while attempting to download file with URL:OneSignal encountered an exception while downloading file
一般的な解決策
画像サイズ
品質や画像サイズを下げて、画像ファイルサイズを推奨設定まで減らしてみてください。画像URL
画像URLには画像への直接リンクが必要で、リダイレクトは許可されません。適切なhttpまたはhttpsプロトコルが提供されていないリダイレクトおよびURL、および画像拡張子がないURLは機能しません。ほとんどの場合、直接リンクには.pngや.jpgなどのファイル拡張子があります
例:
-
これは機能しません:
https://pixabay.com/en/architecture-travel-sky-building-3095716/ -
ただし、画像を右クリックして新しいタブで開くと、これは機能します:
https://cdn.pixabay.com/photo/2018/01/21/01/46/architecture-3095716_960_720.jpg
画像ホスト
画像をホストしているサーバーがダウンしたか、ダウンロード量を処理できなかった可能性があります。デバイスが画像を含むすべての通知リソースをダウンロードするのに約30秒かかります。それより長くかかる場合、そのデバイスには表示されません。 専用サーバーでリソースをホストするか、OneSignalのインポートオプションを使用して当社にホストさせてください。OneSignalは、アップロードされた時点から33日間のみ、サーバーにアップロードされた画像を保存します。33日以上前にアップロードされた画像を含むメッセージを複製または下書きで使用する場合は、画像を再アップロードする必要があります。画像をより長く必要とする場合は、テンプレートを使用するか、独自のサーバーに画像を保存してリソースURLを直接参照できます。
Webプッシュ画像
Windows、Android、およびBig Surを実行するmacOS上のプッシュ通知で大きな画像をサポートしているのはChromeのみです。 Firefox、Safari、Edgeは大きな画像をサポートしていません。 モバイルWebプッシュでは、Androidデバイスの通知シェードで通知を受信したときに、画像を表示するには通知を下にスライドする必要があります。 モバイルブラウザアプリに未読のプッシュ通知が多数ある場合や、多くのタブが開いている場合、通知が表示されなくなる可能性があります。iOSプッシュ画像
iOS通知でリッチメディアが表示されない場合、通常、アプリのNotification Service Extensionが設定されていないことが原因です。iOS Notification Service Extensionに使用したセットアップドキュメントを再確認して、正しく実装されていることを確認してください。1
- 別のデバイスでテストし、画像が表示される場合は、Notification Service Extensionが正しく設定されています。詳細はiOS Notification Service Extensionのトラブルシューティングを参照してください
2
- Webブラウザで添付ファイルのURLを開きます。画像/動画への直接リンクであることを確認してください。HTMLページの一部であってはなりません。また、リダイレクトはサポートされていません。
3
- 添付ファイルのダウンロードに30秒以上かかる場合、iOSは拡張サービスをキャンセルし、通知はメディアなしで表示されます。添付ファイルのサイズが適切であることを確認してください。サポートされているメディアのリスト(および最大ファイルサイズ)はこちらで確認できます。
4
URLがHTTPSであることを確認してください。Xcodeの.plistで
NSAppTransportSecurityをNSAllowsArbitraryLoadsに設定しない限り、HTTP URLは機能しません。アプリをApp Storeにリリースする際は、
NSAllowsArbitraryLoadsを有効にしたままにしないでください。これにより、アプリにセキュリティ脆弱性が生じる可能性があります。詳細については、AppleのSecurity Overviewをお読みください5
- メディアがホストされているデバイスまたはサーバーにネットワークの問題がありました。OneSignalまたは別のホスティングプロバイダーで画像をホストしてみてください。
6
- OneSignalNotificationServiceExtensionの
Deployment Targetを確認し、iOS 10に設定します。