Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
iOS開發者或許需要知道的一些網路與網頁前端知識及其combo技並如何在iOS13被摧毀又在i...
Search
YodaWang
December 12, 2019
Programming
360
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
iOS開發者或許需要知道的一些網路與網頁前端知識及其combo技並如何在iOS13被摧毀又在iOS13.3被修復
YodaWang
December 12, 2019
Other Decks in Programming
See All in Programming
Composerを使ったサプライチェーン攻撃の様子を眺めてみる #phpstudy
o0h
PRO
2
250
Spring Security 実践 ─ GraphQL APIで実務に役立つ 認証・認可 を学ぶ
wagyu
0
250
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
120
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
4
1.4k
Signal Forms: Details & Live Coding @enterJS 2026 in Mannheim
manfredsteyer
PRO
0
160
Datadog × OpenTelemetry 入門と実践のあいだ
kn_to_maxpno
1
160
ECSアプリログをFireLensでコスト削減しようとしたけど諦めた話 in Fargate×Node.js
akihisaikeda
2
4.2k
Webフレームワークの ベンチマークについて
yusukebe
0
170
The NotImplementedError Problem in Ruby
koic
1
840
フロントエンドとバックエンドで「1文字」を揃えよう
youkidearitai
PRO
0
710
net-httpのHTTP/2対応について
naruse
0
500
OSもどきOS
arkw
0
570
Featured
See All Featured
Ethics towards AI in product and experience design
skipperchong
2
310
Statistics for Hackers
jakevdp
799
230k
AI Search: Where Are We & What Can We Do About It?
aleyda
0
7.6k
Leo the Paperboy
mayatellez
7
1.8k
Typedesign – Prime Four
hannesfritz
42
3.1k
Thoughts on Productivity
jonyablonski
76
5.2k
Test your architecture with Archunit
thirion
1
2.3k
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
170
Docker and Python
trallard
47
3.9k
The Cult of Friendly URLs
andyhume
79
6.9k
The Curse of the Amulet
leimatthew05
1
13k
The Limits of Empathy - UXLibs8
cassininazir
1
360
Transcript
在桌⾯建立捷徑 iOS開發者或許需要知道的⼀些網路與網⾴前端知識及其combo 技並如何在iOS13被摧毀⼜在iOS13.3被修復
桌⾯捷徑是啥
None
1. 是個網⾴,最好可以離線使⽤ 2. 被加到桌⾯時看起來要像個APP 3. 需要2種狀態 『提醒使⽤者加到主畫⾯』(很久以前有Private API 可以⽤)
『跳轉到APP』 我們的⽬標
跳轉到APP ‛ Deep Link 被加到桌⾯時看起來要像個APP ‛ ? 最好可以離線使⽤‛ ? 需要2種狀態‛
?
跳轉到APP ‛ Deep Link <a id="deeplink" href=“deeplink://some”></a> <script type="text/javascript"> var
element = document.getElementById(‘deeplink'); var event = document.createEvent('MouseEvents'); event.initEvent('click', true, true, document.defaultView, 1, 0, 0, 0, 0, false, false, false, false, 0, null); setTimeout(function() { element.dispatchEvent(event); }, 25); </script> 1. 建立⼀個連結 2. ⽤ javascript 點擊這個連結
被加到桌⾯時看起來要像個APP <link rel="apple-touch-icon" href="/custom_icon.png"> apple-touch-icon Apple Document Configuring Web Applications
<meta name="apple-mobile-web-app-title" content="AppTitle"> apple-mobile-web-app-title
最好可以離線使⽤ Data URI data:[<mediatype>][;base64],<data> mediatype 為⼀ MIME type 字串,例如 JPEG
圖檔為「image/jpeg」,為非必要 參數,若省略的話,默認值為「text/plain;charset=US-ASCII」。 MIME type
需要2種狀態使⽤ <meta name="apple-mobile-web-app-capable" content="yes"> window.navigator.standalone true/false true false 跳轉 提醒
從桌⾯開啟時網⾴會是全螢幕狀態
guard let shortcutPage = URL(string: “data:text/html;base64,PGh0bWwPGh0bWw+Cjx…”) else { return }
UIApplication.shared.open(shortcutPage) 毫無反應 open(url:) 不⽀援 Data URI
About Apple URL Schemes 1. 找個server放個網⾴做轉址 https://swiftrocks.com/adding-deeplink-shortcuts-to-the-ios-home-screen.html 2. ⽤swifter 建
local server
iOS13…. 以上是iOS12之前的事
iOS12 之前在全螢幕模式下每次開啟都會reload並觸發JavaScript iOS13 只有launch時會load內容 iOS13.3 修好了
<meta name="apple-mobile-web-app-capable" content=“no"> ⽤ document.referrer 判斷 ⽅法1 ⽅法2 第⼀次開啟的時候在網址後⾯加 hash
tag,之後判斷 hash tag iOS13 ~ iOS13.2.1 該怎麼辦 不要使⽤全螢幕模式