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
h.crane
October 25, 2019
Technology
3
700
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
Getting started with controlling LEGO using Swift
hcrane
0
580
Swift 5.9 と C++ の互換性
hcrane
1
340
Live on iOSDC2023
hcrane
4
1k
自販機で1000円を使い切りたいんじゃ!
hcrane
0
81
Vision.framework - 商品画像からのテキスト検出と並列化実装への試み
hcrane
1
550
DevRel/Japan 2023 - 1つの事業部だけで行う DevRel とは
hcrane
0
800
R2-D2をiOSで動かす
hcrane
2
1.5k
iOSDC2022 - SwiftUI in UIKit で開発する世界
hcrane
6
5.9k
iOSDC2022 - iPadOSDC Japan 2022
hcrane
2
3.4k
Other Decks in Technology
See All in Technology
Oracle Cloud Infrastructureデータベース・クラウド:各バージョンのサポート期間
oracle4engineer
PRO
12
7.7k
20240509 CloudWatch でいろいろなものを監視してみよう
masaruogura
1
100
One engineer company with Ruby on Rails
rstankov
2
470
How to do well in consulting–Balkan Ruby 2024
irinanazarova
0
190
中年男性がメインフレームから クラウドへキャリアシフトしてみた
uechishingo
1
440
本番環境で Cloudflareを 使ってみた話
miu_crescent
2
100
開発スピードの維持向上を支える、テスト設計の 漸進的進化への取り組み / Continuous Test Design Development for Speed of Product Development
ropqa
0
160
【基本】データベース設計
oracle4engineer
PRO
2
290
Handling focus in 2024
tahia910
0
680
TDD - Test Driven Drupal
opdavies
0
3k
令和版ソフトウェアエンジニアの情報収集術 PHPカンファレンス香川2024
ysknsid25
4
720
uvを使ってストレスフリーな Python開発をしよう!
r74tech
0
260
Featured
See All Featured
Statistics for Hackers
jakevdp
790
220k
Scaling GitHub
holman
457
140k
RailsConf 2023
tenderlove
9
570
Keith and Marios Guide to Fast Websites
keithpitt
408
22k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
22
1.4k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
41
4.4k
Designing for Performance
lara
601
67k
What’s in a name? Adding method to the madness
productmarketing
PRO
17
2.7k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
Side Projects
sachag
451
41k
Why Our Code Smells
bkeepers
PRO
331
56k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
20
1.8k
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