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
CA.swift #8 Protect against unauthorized use wi...
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Akio Itaya
March 06, 2019
Technology
1.5k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
CA.swift #8 Protect against unauthorized use with RxSwift
RxSwift を用いた設計で、配信コンテンツを不正利用から守る
Akio Itaya
March 06, 2019
More Decks by Akio Itaya
See All by Akio Itaya
Building a Meta Ray-Ban display app
akkeylab
0
77
What If Your App Could Debug Itself?
akkeylab
0
79
How to stabilize UI tests using XCTest
akkeylab
0
190
Bringing Spatial Web to E-Commerce
akkeylab
0
100
Learn CPU architecture with Assembly
akkeylab
1
2.2k
Porting a visionOS App to Android XR
akkeylab
0
1.2k
How to handle 3D content on Android XR
akkeylab
0
250
Create a website using Spatial Web
akkeylab
0
430
How to build visionOS apps using Windows
akkeylab
0
230
Other Decks in Technology
See All in Technology
Master Dataグループ紹介資料
sansan33
PRO
1
4.8k
toio・myCobotでフィジカルAIっぽいことを行うための検討(とりあえず調査) / フィジカルAI LT(IoTLTによる開催)
you
PRO
0
260
[MIRU26] To What Extent Does MLLM-as-a-Judge Exhibit Cross-Model Preference Bias?
keio_smilab
PRO
0
170
SmartHR Engineering Team Deck
smarthr
0
120
LangfuseによるLLMOps基盤の構築と活用事例
zozotech
PRO
1
250
現場で使える AWS DevOps Agent 活用ノウハウ - Release Management 機能の検証結果を添えて / AWS DevOps Agent Release Management and Know-How
kinunori
5
870
OSPN.JPバージョンアップ作業進捗のご報告 / 20260801-osc26kyoto
akkiesoft
0
150
LLMリーダーボードアップデートに向けたAgentic Math_SWEのトレースについて
nejumi
0
200
Data Hubグループ 紹介資料
sansan33
PRO
0
3.1k
名古屋の市バスGTFS-JPデータ×スガキヤ 最寄りバス停検索をAmazon ElastiCache Serverless for Valkeyで最適化する
usanchuu
1
120
データ組織の転換期 一足飛びしない段階的戦略
leveragestech
PRO
0
140
A Bag-of-Documents Model for Query Specificity
dtunkelang
0
200
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
232
55k
The SEO identity crisis: Don't let AI make you average
varn
0
520
Odyssey Design
rkendrick25
PRO
2
740
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
340
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
360
Between Models and Reality
mayunak
4
380
Side Projects
sachag
455
43k
Dominate Local Search Results - an insider guide to GBP, reviews, and Local SEO
greggifford
PRO
0
240
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
330
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.8k
Are puppies a ranking factor?
jonoalderson
1
3.7k
The browser strikes back
jonoalderson
0
1.4k
Transcript
৴ίϯςϯπΛෆਖ਼ར༻͔ΒकΔ AKKEY / AKIO ITAYA MatchingAgent, Inc. RxSwiftΛ༻͍ͨઃܭͰ
໊લɿ൘୩ ߊྑɹ/ɹ͖͋ͬʔ झຯɿυϥΠϒ ׆ಈɿ@AkkeyLab Cyberagent, Inc. MatchingAgent, Inc. େֶೖֶޙϓϩάϥϛϯάʹҰࠍΕɺ18৽ଔ iOS
ΤϯδχΞ ࣗݾհ
None
ࡐ
None
ࡐ ◆ ಈըࢹௌϓϥοτϑΥʔϜ ◆ ެ։લ ݸਓ։ൃΞϓϦ ◆ ࠓճαʔόଆʹ৮Ε·ͤΜ
ಋೖٕज़
ಋೖٕज़ʢClient onlyʣ RxSwift VueFlux Moya Realm Travis CI CodeCov GitHub
Architecture
Architecture State Computed VC Actions Mutations VM
State Computed VC API Request Actions Mutations VM Architecture
State Computed VC API Request Response Routing Actions Mutations VM
Architecture
State Computed VC API Request Response Routing Actions Mutations VM
Implement some properties Architecture
State Computed VC API Request Response Routing Actions Mutations VM
Output Observable Implement some properties Architecture
State Computed VC API Request Response Routing Actions Mutations VM
Output Observable Input / Output Logic Implement some properties Architecture
State Computed VC API Request Response Routing Actions Mutations VM
Output Observable Input / Output Logic Implement some properties Architecture
State Computed VC API Request Response Routing Actions Mutations VM
Output Observable Input / Output Logic Implement some properties Architecture
State Computed VC API Request Response Routing Actions Mutations VM
Output Observable Input / Output Logic Implement some properties Architecture
લఏ݅
લఏ݅ ◆ API Response 1. ݅ͷಈըใΛऔಘ
લఏ݅ ◆ API Response ෆมͷID 1. ݅ͷಈըใΛऔಘ
લఏ݅ ◆ API Response ෆมͷID 2. IDΛPrimaryKeyͱͯ͠VideoLinkΛऔಘ 1. ݅ͷಈըใΛऔಘ
State Computed VC API Request Response Routing Actions Mutations VM
Output Observable Input / Output Logic Implement some properties ಈը࠶ੜ·Ͱʹ ̎ϧʔϓͯ͠Δ ʢॳճʹݶΓʣ Architecture
ಈըίϯςϯπͷอޢ
ಈըίϯςϯπͷอޢ URL ͕όϨΔͱෆਖ਼ Download ͷՄೳੑ
ಈըίϯςϯπͷอޢ ◆ ఆظత URL มߋ ◆ IP ΞυϨε੍ݶ ◆ ҉߸Խ
ಈըίϯςϯπͷอޢ ◆ ఆظత URL มߋ ◆ IP ΞυϨε੍ݶ ◆ ҉߸Խ
ಈըίϯςϯπͷอޢ ຖ࣌ ݕࡧ A B C D 1 2 3
4 1A 1B 4C 4D ߋ৽ ◆ ఆظత URL มߋ
ಈըίϯςϯπͷอޢ A B C D 1 1A 1B 4C 4D
ຖ࣌ ݕࡧ ߋ৽ ◆ ఆظత URL มߋ 2 3 4
ಈըίϯςϯπͷอޢ A B C D 1 1A 1B 4C 4D
ຖ࣌ ݕࡧ ߋ৽ ◆ ఆظత URL มߋ 2 3 4
ಈըίϯςϯπͷอޢ ◆ ఆظత URL มߋ A B C D 1
1A 1B 4C 4D ຖ࣌ ݕࡧ ߋ৽ 2 3 4
ಈըίϯςϯπͷอޢ A B C D 1 1A 1B 4C 4D
ຖ࣌ ݕࡧ ߋ৽ ◆ ఆظత URL มߋ 2 3 4
withLatestFrom
ఆظతURLมߋ ຖ࣌ ݕࡧ A B C D 1 1A 1B
4C 4D ߋ৽ ◆ withLatestFrom 2 3 4
ఆظతURLมߋ
ఆظతURLมߋ
ఆظతURLมߋ
ఆظతURLมߋ
ಈըίϯςϯπͷอޢ ◆ ఆظత URL มߋ ϥάͰݟΕͳ͍Մೳੑ͋Γ ൺֱత؆୯ͳ࣮
ಈըίϯςϯπͷอޢ ◆ ఆظత URL มߋ ◆ IP ΞυϨε੍ݶ ◆ ҉߸Խ
ಈըίϯςϯπͷอޢ IPมԽ ݕࡧ A B C D 1 2 3
4 1B 3C 4D ߋ৽ ◆ IP ΞυϨε੍ݶ
ಈըίϯςϯπͷอޢ IPมԽ ݕࡧ A B C D 1 2 3
4 1B 3C 4D ߋ৽ ◆ IP ΞυϨε੍ݶ
ಈըίϯςϯπͷอޢ IPมԽ ݕࡧ A B C D 1 2 3
4 1B 3C 4D ߋ৽ ◆ IP ΞυϨε੍ݶ
ಈըίϯςϯπͷอޢ IPมԽ ݕࡧ A B C D 1 2 3
4 1B 3C 4D ߋ৽ ◆ IP ΞυϨε੍ݶ
withLatestFrom
IPΞυϨε੍ݶ ◆ withLatestFrom IPมԽ ݕࡧ A B C D 1
2 3 4 1B 3C 4D ߋ৽
IPΞυϨε੍ݶ
ಈըίϯςϯπͷอޢ ◆ IP ΞυϨε੍ݶ IPมԽݕͷਫ਼ʹࠨӈ͞ΕΔ ൺֱత࣮༻తͳͷͰʁ
ؒΛ͝հ
ؒΛ͝հ ຖ࣌ ݕࡧ A B C D 1 1A 1B
4C 4D ߋ৽ ◆ combineLatest 2B 3B 2 3 4
ؒΛ͝հ ຖ࣌ ݕࡧ A B C D 1 1A 1B
4C 4D ߋ৽ ◆ combineLatest 2B 3B 2 3 4
combineLatest
combineLatest
combineLatest
ಈըίϯςϯπͷอޢ ◆ ఆظత URL มߋ ◆ IP ΞυϨε੍ݶ ◆ ҉߸Խ
ಈըίϯςϯπͷอޢ ◆ ҉߸Խ https://akkeylab.com/s=&…
ಈըίϯςϯπͷอޢ ◆ ҉߸Խ ղಡ๏͋ΔͷͰ݁ہᴟͬ͜͝ ڧྗͰ࣮༻త https://akkeylab.com/s=&… ͍ͨͪ
ຊͷొਓ ◆ withLatestFrom ◆ combineLatest
ຊͷొਓ ◆ withLatestFrom ◆ combineLatest ◆ tapple
Thank you !!