Submit Search
Contents blocker on iOS9
10 likes
12,568 views
T
toyship
ContentsBlocker on iOS9
Internet
Read more
1 of 28
Download now
Downloaded 13 times
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
More Related Content
PDF
第一回REST勉強会_鈴木商店の開発環境
tsuchimon
PDF
「安全なウェブサイトの作り方」を読もう
Atsushi Matsuo
PDF
第一回Rest勉強会 ワークショップ
ksimoji
PPTX
IE のサポート変更が Azure に及ぼす影響
彰 村地
PDF
Firefox 4 with SVG
Makoto Kato
PDF
「10年後のWeb」のために、今すべきこと
Mitsue-Links Co.,Ltd. Accessibility Department
PPTX
ElasticBeanstalkで作るPHP実行環境
Naoyuki Funatsu
PDF
Core Graphics on watchOS 2
Shuichi Tsutsumi
第一回REST勉強会_鈴木商店の開発環境
tsuchimon
「安全なウェブサイトの作り方」を読もう
Atsushi Matsuo
第一回Rest勉強会 ワークショップ
ksimoji
IE のサポート変更が Azure に及ぼす影響
彰 村地
Firefox 4 with SVG
Makoto Kato
「10年後のWeb」のために、今すべきこと
Mitsue-Links Co.,Ltd. Accessibility Department
ElasticBeanstalkで作るPHP実行環境
Naoyuki Funatsu
Core Graphics on watchOS 2
Shuichi Tsutsumi
Viewers also liked
(20)
PDF
iOS 9 の新機能 Core Image 編
Shuichi Tsutsumi
PDF
What's New in Core Location - WWDC 2015
Kosuke Ogawa
PDF
20150707 wwdc21cafe
Sohichiro Nagao
PDF
Watch connectivity
Motoki Narita
PDF
WWDC 2015 情報共有会
大介 束田
PDF
Search APIs in Spotlight and Safari
Yusuke Kita
PDF
How to make workout app for watch os 2
Yusuke Kita
PDF
Audio Unit Extensions 〜オーディオエフェクトのアプリ間共有〜
Shuichi Tsutsumi
PDF
とにかく明るいCore Spotlight
今城 善矩
PDF
watchOS 2 新機能の細かい話
Shuichi Tsutsumi
PDF
UI/UX に影響の大きい watchOS 2 の新機能 3つ
Shuichi Tsutsumi
PDF
Core Image Tips & Tricks in iOS 9
Shuichi Tsutsumi
PDF
I018145157
IOSR Journals
PDF
I os*ble簡単プロトタイピング
Takahiro Yamamoto
PDF
Stupid Video Tricks, CocoaConf Las Vegas
Chris Adamson
PDF
Swiftではじめる動画再生
Yusuke Ariyoshi
PDF
iOSエンジニア in ハードウェア・プロジェクト
Shuichi Tsutsumi
PPTX
Reflectionのパフォーマンス
明 高橋
PPTX
高速な広告配信サーバの作り方のコツ
Innami Satoshi
PPTX
HTTPプロキシによるゼロダウンタイムなアドサーバー移行
Ryo Aita
iOS 9 の新機能 Core Image 編
Shuichi Tsutsumi
What's New in Core Location - WWDC 2015
Kosuke Ogawa
20150707 wwdc21cafe
Sohichiro Nagao
Watch connectivity
Motoki Narita
WWDC 2015 情報共有会
大介 束田
Search APIs in Spotlight and Safari
Yusuke Kita
How to make workout app for watch os 2
Yusuke Kita
Audio Unit Extensions 〜オーディオエフェクトのアプリ間共有〜
Shuichi Tsutsumi
とにかく明るいCore Spotlight
今城 善矩
watchOS 2 新機能の細かい話
Shuichi Tsutsumi
UI/UX に影響の大きい watchOS 2 の新機能 3つ
Shuichi Tsutsumi
Core Image Tips & Tricks in iOS 9
Shuichi Tsutsumi
I018145157
IOSR Journals
I os*ble簡単プロトタイピング
Takahiro Yamamoto
Stupid Video Tricks, CocoaConf Las Vegas
Chris Adamson
Swiftではじめる動画再生
Yusuke Ariyoshi
iOSエンジニア in ハードウェア・プロジェクト
Shuichi Tsutsumi
Reflectionのパフォーマンス
明 高橋
高速な広告配信サーバの作り方のコツ
Innami Satoshi
HTTPプロキシによるゼロダウンタイムなアドサーバー移行
Ryo Aita
Ad
More from toyship
(15)
PDF
Time for Xcode Behavior
toyship
PDF
Notifications in iOS10
toyship
PDF
Universal Link
toyship
PDF
Can we live in a pure Swift world?
toyship
PDF
Swift Protocol and Selector
toyship
PDF
What's new Swift3
toyship
PDF
Xcode7時代のアプリ配布
toyship
PDF
My first tvOS
toyship
PDF
3D touch for iOS
toyship
PDF
Embedded framework and so on
toyship
PDF
はじめてのWKInterfaceController
toyship
PDF
App extension for iOS
toyship
PDF
サーバーからiOSアプリを変更する
toyship
PDF
Xcode bot
toyship
PDF
AVSpeechSynthesizerとロケール
toyship
Time for Xcode Behavior
toyship
Notifications in iOS10
toyship
Universal Link
toyship
Can we live in a pure Swift world?
toyship
Swift Protocol and Selector
toyship
What's new Swift3
toyship
Xcode7時代のアプリ配布
toyship
My first tvOS
toyship
3D touch for iOS
toyship
Embedded framework and so on
toyship
はじめてのWKInterfaceController
toyship
App extension for iOS
toyship
サーバーからiOSアプリを変更する
toyship
Xcode bot
toyship
AVSpeechSynthesizerとロケール
toyship
Ad
Contents blocker on iOS9
1.
Contents Blocker on iOS9 @TachibanaKaoru ©
TachibanaKaoru 1
2.
自己紹介 Tachibana Kaoru - iOS
Engineer at VOYAGE GROUP - Twitter: @TachibanaKaoru - Blog: http://www.toyship.org/ • WWDCは2010,2015に参加 © TachibanaKaoru 2
3.
What is Contents Blocker © TachibanaKaoru
3
4.
What is Contents
Blocker • iOSやMacでSafariに表示する項目を、自動的に制限する機能 • Macでは、Safari Pluginとして提供される • iOSでは、Today WidgetやShare ExtensionのようにApp Extensionとして提供される © TachibanaKaoru 4
5.
What is Contents
Blocker • ブロックする対象 • cssで指定された特定の要素を非表示にする • 特定のファイルを読みこまないようにする • 特定のクッキーを読みこまないようにする © TachibanaKaoru 5
6.
What is Contents
Blocker • 適用範囲 • Safari以外のブラウザ(Chromeなど)には影響しない • iOS9から導入された SFSafariViewControllerには適用され る • UIWebView/MKWebViewには影響しない © TachibanaKaoru 6
7.
How to implement Contents Blocker for
iOS © TachibanaKaoru 7
8.
How to implement
Contents Blocker for iOS iOSではコンテンツブロッカーは、App Extensionとして提供さ れているため、まずは本体となるアプリを作成します。 Xcodeでアプリを作ったら、メニューから File - New - Target を選び、iOS-Application Extension の Content Blocker Extension を選びます。 © TachibanaKaoru 8
9.
How to implement
Contents Blocker for iOS コンテンツブロッカーのターゲットが追加され、 ActionRequestHandler.swift と blockerList.json のファイル が生成されます。 ブロックする要素と条件は blockerList.json ファイルで設定し ます。 © TachibanaKaoru 9
10.
試しにこちらのページの要素 にコンテンツブロッカーを適 用させてみましょう © TachibanaKaoru 10
11.
hide contents CSSの特定の要素を非表示にする方法です。 blockerList.json には、複数の表示設定を追加することがで き、ファイルの先頭から順番に適用されていきます。 action要素
処理内容についての設定 trigger要素 処理の適用箇所の設定 © TachibanaKaoru 11
12.
hide contents タイトルの下の日付や著者名を消してみましょう。 この部分のclass属性は「byline」なので、 blockerList.jsonにtype:css-display-noneのaction要素を追加 することでこの部分を非表示にすることができます。 action要素のselectorにはdiv.bylineを指定します。 trigger要素でこの条件の適用場所の指定をします。 © TachibanaKaoru
12
13.
blockerList.json [ { "action": { "type": "css-display-none", "selector"
: "div.byline" }, "trigger": { "url-filter": ".*" } } ] © TachibanaKaoru 13
14.
hide contents facebookのlikeボタンも消してみましょう。 この部分のdivのclass属性はwsblfacebooklikeです blockerList.json にこの要素を追加します ©
TachibanaKaoru 14
15.
blockerList.json [ { "action": { "type": "css-display-none", "selector"
: "div.wsbl_facebook_like" }, "trigger": { "url-filter": ".*" } } ] © TachibanaKaoru 15
16.
hide contents この設定でさきほどのページを表示する と、こうなります。 タイトルの下の日付や著者名の部分と、 facebookのlikeボタンの表示が消えてい ますね。 © TachibanaKaoru
16
17.
© TachibanaKaoru 17
18.
block contents 次は、コンテンツの読み込みをブロックしてみましょう。 画像のURLは http://www.toyship.org/wp-content/uploads/ 2014/03/XcodeScreen-636×310.png
です。 blockerList.json に type:block のaction要素を追加すると、こ の画像の読み込みをブロックすることができます。 © TachibanaKaoru 18
19.
blockerList.json [ { "action": { "type": "block" }, "trigger":
{ "url-filter": "/wp-content/uploads/2014/03/", "if-domain": ["www.toyship.org"] } } ] © TachibanaKaoru 19
20.
block contents この設定でさきほどのページを表示する と、こうなります。 画像の表示が消えていますね。 © TachibanaKaoru
20
21.
© TachibanaKaoru 21
22.
block contents • ブロックは、画像だけではなく、特定のjsファイルやcssファ イルのブロックも可能。 •
コンテンツブロッカーで、実際にどんなコンテンツがブロッ クされたのかはアプリで知ることはできない • もしブロックされた要素がキャッシュされていた場合にも、 読み込みはブロックされます。 © TachibanaKaoru 22
23.
block cookies 同様にtype:block-cookiesのaction要素を追加することでクッ キーのブロックもできます。 © TachibanaKaoru
23
24.
How to apply Contents Blocker
for iOS © TachibanaKaoru 24
25.
How to apply
Contents Blocker for iOS -ユーザーがSafariで有効にするためには下記の手順が必要です。 -コンテンツブロッカーを含むアプリをダウンロードする -Safariの設定の「コンテンツブロッカー」の項目から、インス トールしたアプリのコンテンツブロッカーを選んでonにする © TachibanaKaoru 25
26.
Webkit 詳しい blockerList.json の設定方法 は、Introduction
to WebKit Content Blockersを参照してください。 Benjamin Poulain(@awfulben) なお、ソースコードも公開されていま す。 © TachibanaKaoru 26
27.
Matome © TachibanaKaoru 27
28.
Matome コンテンツブロッカーをonにすると、特定のcss要素を非表示に したり、特定のファイルやクッキーの読み込みをブロックする ことができる コンテンツブロッカーはToday WidgetやShare Extensionのよう に、既存のアプリの一部として提供される 何をブロックしたのかという情報は、コンテンツブロッカーを 含むアプリで取得することはできない ©
TachibanaKaoru 28
Download