hysryt / wiki

https://hysryt.github.io/wiki/
0 stars 0 forks source link

apple-touch-icon #94

Open hysryt opened 6 years ago

hysryt commented 6 years ago

https://developer.apple.com/library/archive/documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html

hysryt commented 6 years ago

ウェブクリップ用のウェブページアイコンの指定

ウェブクリップとはホームスクリーンに設置したWebページへのリンクのこと。 ウェブサイト全体に適用させたいアイコンはドキュメントルートにapple-touch-icon.pngで配置する。 特定のページに適用させたいアイコンはlink要素で画像ファイルを明示する。

<link rel="apple-touch-icon" href="/custom_icon.png">

デバイスピクセル比に応じて画像ファイルのサイズを変更したい場合はlink要素を複数記述する。

<link rel="apple-touch-icon" href="touch-icon-iphone.png">
<link rel="apple-touch-icon" sizes="152x152" href="touch-icon-ipad.png">
<link rel="apple-touch-icon" sizes="180x180" href="touch-icon-iphone-retina.png">
<link rel="apple-touch-icon" sizes="167x167" href="touch-icon-ipad-retina.png">

デバイスピクセル比に応じて最適なものが選択される。 現在の推奨アイコンサイズは以下の通り( iOS Human Interface GuidelinesApp Icon を参照)。

デバイス アイコンサイズ
iPhone 180px × 180px (60pt × 60pt @ 3x)
120px × 120px (60pt × 60pt @ 2x)
iPad Pro 167px × 167px (83.5pt × 83.5pt @ 2x)
iPad, iPad mini 152px × 152px (76pt × 76pt @ 2x)

iPhone のデバイスピクセル比は以下の通り(iOS Human Interface GuidelinesImage Size and Resolutionを参照)。

デバイス デバイスピクセル比
iPhone XS Max 3
iPhone XS 3
iPhone XR 2
iPhone X 3
iPhone 8 Plus 3
iPhone 8 2
iPhone 7 Plus 3
iPhone 7 2
iPhone 6s Plus 3
iPhone 6s 2
iPhone SE 2

推奨サイズと一致する画像がない場合はそれより大きいうちの最小のファイルが使用される。推奨サイズより大きいサイズがない場合は全てのアイコンのうち一番大きいサイズの画像が使用される。

link要素でアイコンが指定されていない場合はルートディレクトリのapple-touch-iconから始まるPNGファイルを使用する。

hysryt commented 6 years ago

起動画面の画像を指定

ネイティブアプリのように起動画面の画像を指定できる。通常は最後に起動した時のスクリーンショットが使用される。独自に指定したい場合はlink要素を使用する。

<link rel="apple-touch-startup-image" href="/launch.png">

起動画面の推奨サイズは Human Interface Guidelines の Launch Screen を参照。

hysryt commented 6 years ago

起動アイコンのタイトルを指定

起動アイコンのタイトルを指定できる。デフォルトではtitleタグのテキストが使われる。独自に指定したい場合は meta タグを使用する。

<meta name="apple-mobile-web-app-title" content="AppTitle">
hysryt commented 6 years ago

Safari のユーザインターフェースコンポーネントを隠す。

Safari では最適化機能の一つとしてネイティブアプリのように見えるスタンドアロンモードがある。スタンドアロンモードを使用することでSafariのUIの一部を隠すことができる。

スタンドアロンモードを有効化するには meta タグで apple-mobile-web-app-capable を yes に設定する。

<meta name="apple-mobile-web-app-capable" content="yes">

ユーザは window.navigator.standalone プロパティを使ってスタンドアロンモードかどうかを判断することができる。

hysryt commented 6 years ago

ステータスバーの外観を変更する

スタンドアロンモードが有効な場合、meta タグで apple-mobile-web-app-status-bar-style を指定することでステータスバーを最小化することができる。

スタンドアロンモード以外の場合は何も影響しない。

例えば以下のように設定することでステータスバーを半透明の黒にすることができる。

<meta name="apple-mobile-web-app-status-bar-style" content="black">
hysryt commented 6 years ago

他のネイティブアプリにリンクする

特別なURLを使用することで他のアプリへリンクをはることができる。電話をかけたり、SMS や iMessage を送ったり、Youtube を見たりといったことがそれぞれのアプリで可能。

例えば電話をかけるリンクを貼る場合は以下のようにする。

<a href="tel:1-408-555-5555">Call me</a>

URL に使えるスキーマは About Apple URL Schemes を参照。

hysryt commented 6 years ago

Android版 https://developers.google.com/web/fundamentals/design-and-ux/browser-customization/?hl=ja