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の動画アプリを作る上で押さえておきたい設計
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
h.crane
October 25, 2019
Technology
3
800
iOSの動画アプリを作る上で押さえておきたい設計
イベント「Tech Book Conference for iOS」で登壇した内容
https://techbookconference.connpass.com/event/148487/
h.crane
October 25, 2019
Tweet
Share
More Decks by h.crane
See All by h.crane
Personal Voice on iOS26
hcrane
0
150
iOSDJ2025 - Stream Deck Plugin using Swift
hcrane
0
1.7k
Getting started with controlling LEGO using Swift
hcrane
2
1.3k
Swift 5.9 と C++ の互換性
hcrane
1
900
Live on iOSDC2023
hcrane
4
1.5k
自販機で1000円を使い切りたいんじゃ!
hcrane
0
200
Vision.framework - 商品画像からのテキスト検出と並列化実装への試み
hcrane
1
880
DevRel/Japan 2023 - 1つの事業部だけで行う DevRel とは
hcrane
0
1.1k
R2-D2をiOSで動かす
hcrane
2
4.9k
Other Decks in Technology
See All in Technology
コスト削減から「セキュリティと利便性」を担うプラットフォームへ
sansantech
PRO
3
1.6k
広告の効果検証を題材にした因果推論の精度検証について
zozotech
PRO
0
210
今こそ学びたいKubernetesネットワーク ~CNIが繋ぐNWとプラットフォームの「フラッと」な対話
logica0419
5
540
20260204_Midosuji_Tech
takuyay0ne
1
160
ECS障害を例に学ぶ、インシデント対応に備えたAIエージェントの育て方 / How to develop AI agents for incident response with ECS outage
iselegant
4
460
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
15
93k
~Everything as Codeを諦めない~ 後からCDK
mu7889yoon
3
530
Claude Code for NOT Programming
kawaguti
PRO
1
110
Cloud Runでコロプラが挑む 生成AI×ゲーム『神魔狩りのツクヨミ』の裏側
colopl
0
150
プロポーザルに込める段取り八分
shoheimitani
1
670
30万人の同時アクセスに耐えたい!新サービスの盤石なリリースを支える負荷試験 / SRE Kaigi 2026
genda
4
1.4k
ClickHouseはどのように大規模データを活用したAIエージェントを全社展開しているのか
mikimatsumoto
0
270
Featured
See All Featured
Git: the NoSQL Database
bkeepers
PRO
432
66k
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
440
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.1k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
120
Context Engineering - Making Every Token Count
addyosmani
9
670
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
38
2.7k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
110
Into the Great Unknown - MozCon
thekraken
40
2.3k
Navigating Team Friction
lara
192
16k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
350
jQuery: Nuts, Bolts and Bling
dougneiner
65
8.4k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
254
22k
Transcript
iOSの動画アプリを作る上で 押さえておきたい設計 Hiromu Tsuruta
About me 〈Company〉 - every, inc. / DELISH KITCHEN 〈Role〉
- iOS Developer 〈Account〉 - Twitter: @hcrane14 - Qiita: H_Crane
動画のお話の前に、、、 AVFoundationの制約があるって知ってました?
AVFoundationが許可できる 動画の同時接続数(再生数)に上限が! → その数は16接続まで → iOS13から32接続まで増えた! (UIKitに限る、、?)
Demo TableViewで動画を保持したセルを表示させたテスト ここだけ 動画が出ていない! つまり32個までしか 接続できないことが わかった! セルを33個生成し動画を同時再生させた時 9/15なので Xcode
beta版 セルを17個生成し動画を同時再生させた時 ここだけ 動画が動いていない! つまり16個までしか 接続できない、、 はずだった笑
「え?32個も同時に接続することなどなくない?」 → 気づいていないだけで勝手に接続されてっぞ!
① 画面遷移で奥深く進む場合はスタックされる 参考 https://www.google.com/url?sa=i&source=images&cd=&cad=rja&uact=8&ved=2ahUKEwi7x4GC8rPlAhULx4sBHcBAAzUQjhx6BAgBEAI&url=http%3A%2F%2Fharuna0503.xsrv.jp%2F2019%2F07 %2F04%2Fios-%25E7%2594%25BB%25E9%259D%25A2%25E9%2581%25B7%25E7%25A7%25BB%25E3%2581%25AE%25E7%25A8%25AE%25E9%25A1%259E%2F&psig=AOvVaw2OXL EayApH9Ad0tPInLYVy&ust=1571971474667862 画面遷移例
② 動画の広告は勝手にスタックされる 参考 https://www.google.com/url?sa=i&source=images&cd=&cad=rja&uact=8&ved=2ahUKEwjYkqbwoLLlAhXZc94KHZcYCL QQjhx6BAgBEAI&url=https%3A%2F%2Fwww.exchangewire.jp%2F2015%2F01%2F28%2Fnews-video-mobile%2F&psi g=AOvVaw0z9I5CcmN9FIFF3hFo1DrJ&ust=1571915808807843 参考 https://www.google.com/url?sa=i&source=images&cd=&cad=rja&uact=8&ved=2ahUKEwjWt8iYorLlAhWswosBHYXVDpgQjhx6BA gBEAI&url=https%3A%2F%2Fgmotech.jp%2Fnews_release%2F%3Fp%3D5121&psig=AOvVaw2RfpR8QLMvZox85TI8ikgm&ust =1571916082239556
動画リワード広告 複数の動画広告
どうやって動画の最適化すんの?
YoutubeのiOSアプリから動画最適化例を見る
動画の流れを分けてみてみると、、 検索 1回目 検索 2回目 検索 検索 動画 動画 閉じる
閉じる 動画のプレイヤーを 1つ保持 動画のプレイヤーを 使い回す
検索 検索 検索 検索 ・・・ 仕組みはシンプル 動画プレイヤー
動画のプレイヤーを管理して 制限しているだけ!
シングルトンで動画のプレイヤーを管理
RxSwift / Combine などを使用すると
https://booth.pm/ja/items/1567921 続きは 本で!
SwiftUIで動画を複数表示させた時 100個を同時に再生させても問題なかった! おまけ
謎は深まるばかり、、、 fin