Masayuki Iwai Software Engineer
WWDC 2016 Personal Recollection
SiriKit, ReplayKit, GameplayKit and watchOS 3
WWDC 2016 #akibaswift




Unity+iOS


WWDC 2016 Personal Recollection
WWDC 2016 Personal Recollection
ReplayKit
ReplayKit
ReplayKit




What’s New in iOS 10
NEW
ReplayKit




What’s New in iOS 10
NEW
ReplayKit
Live broadcasting
NEW
ReplayKit
Live broadcasting
NEW
ReplayKit
- (void)initBroadcasting {
[RPBroadcastActivityViewController
loadBroadcastActivityViewControllerWithHandler:
^(RPBroadcastActivityViewController * _Nullable broadcastActivityViewController,
NSError * _Nullable error) {
// Set delegate
broadcastActivityViewController.delegate = self;
// Present RPBroadcastActivityViewController
UIViewController *rootViewController = UnityGetGLViewController();
[rootViewController presentViewController:broadcastActivityViewController
animated:YES completion:nil];
}];
}
Live broadcasting
NEW
ReplayKit
- (void)initBroadcasting {
[RPBroadcastActivityViewController
loadBroadcastActivityViewControllerWithHandler:
^(RPBroadcastActivityViewController * _Nullable broadcastActivityViewController,
NSError * _Nullable error) {
// Set delegate
broadcastActivityViewController.delegate = self;
// Present RPBroadcastActivityViewController
UIViewController *rootViewController = UnityGetGLViewController();
[rootViewController presentViewController:broadcastActivityViewController
animated:YES completion:nil];
}];
}
Live broadcasting
NEW
ReplayKit
Live broadcasting
NEW
https://developer.apple.com/videos/play/wwdc2016/601/
ReplayKit
- (void)broadcastActivityViewController:(RPBroadcastActivityViewController
*)broadcastActivityViewController
didFinishWithBroadcastController:(RPBroadcastController *)broadcastController
error:(NSError *)error {
// Dismiss RPBroadcastActivityViewController
[broadcastActivityViewController dismissViewControllerAnimated:YES completion:^{
// Keep RPBroadcastController and set delegate
self.broadcastController = broadcastController;
self.broadcastController.broadcastControllerDelegate = self;
}];
}
Live broadcasting
NEW
ReplayKit
- (void)broadcastActivityViewController:(RPBroadcastActivityViewController
*)broadcastActivityViewController
didFinishWithBroadcastController:(RPBroadcastController *)broadcastController
error:(NSError *)error {
// Dismiss RPBroadcastActivityViewController
[broadcastActivityViewController dismissViewControllerAnimated:YES completion:^{
// Keep RPBroadcastController and set delegate
self.broadcastController = broadcastController;
self.broadcastController.broadcastControllerDelegate = self;
}];
}
Live broadcasting
NEW
ReplayKit
- (void)broadcastActivityViewController:(RPBroadcastActivityViewController
*)broadcastActivityViewController
didFinishWithBroadcastController:(RPBroadcastController *)broadcastController
error:(NSError *)error {
// Dismiss RPBroadcastActivityViewController
[broadcastActivityViewController dismissViewControllerAnimated:YES completion:^{
// Keep RPBroadcastController and set delegate
self.broadcastController = broadcastController;
self.broadcastController.broadcastControllerDelegate = self;
}];
}
Live broadcasting
NEW
ReplayKit
- (void)startBroadcasting {
[self.broadcastController startBroadcastWithHandler:^(NSError * _Nullable
error) {
// Broadcast started
}];
}
Live broadcasting
NEW
ReplayKit
- (void)startBroadcasting {
[self.broadcastController startBroadcastWithHandler:^(NSError * _Nullable
error) {
// Broadcast started
}];
}
- (void)finishBroadcasting {
[self.broadcastController finishBroadcastWithHandler:^(NSError * _Nullable
error) {
// Broadcast finished
self.broadcastController = nil;
}];
}
Live broadcasting
NEW
ReplayKit


Live broadcasting
NEW
ReplayKit






Live broadcasting
NEW
ReplayKit






Live broadcasting
NEW
https://developer.apple.com/videos/play/wwdc2016/601/
https://developer.apple.com/videos/play/wwdc2016/601/
https://developer.apple.com/videos/play/wwdc2016/601/
ReplayKit
Screen recording with Unity
https://github.com/miyabi/unity-replay-kit-bridge
NEW
One More Thing
WWDC 2016 Personal Recollection
WWDC 2016 Personal Recollection
WWDC 2016 Personal Recollection
WWDC 2016 Personal Recollection
WWDC 2016 Personal Recollection
WWDC 2016 Personal Recollection
WWDC 2016 Personal Recollection
Cycling in San Francisco
Cycling in San Francisco
Cycling in San Francisco
Cycling in San Francisco


Cycling in San Francisco


Thank you!

More Related Content

PDF
WWDC 2016 Personal Recollection
PDF
WSO2 Screencast - How to Easily Build a Git-Based CI/CD Pipeline for your API...
PPTX
Fastlane
PDF
Fastlane - Automation and Continuous Delivery for iOS Apps
PPTX
Mobile CICD
PPTX
Angular for rookies MS TechDays 2017
PDF
API公開最初の一歩 - API Connect on Bluemix
WWDC 2016 Personal Recollection
WSO2 Screencast - How to Easily Build a Git-Based CI/CD Pipeline for your API...
Fastlane
Fastlane - Automation and Continuous Delivery for iOS Apps
Mobile CICD
Angular for rookies MS TechDays 2017
API公開最初の一歩 - API Connect on Bluemix

What's hot (19)

PDF
Using Chef and Vagrant at Gengo
PDF
DMCA #25: Jenkins - Docker & Android: Comment Docker peu faciliter la créatio...
PPTX
Gab2015 sam p_danielt_emilienp_legacycodeatelier
PDF
DevOps Heroes 2019
PDF
Gitlab flow solo
PDF
The Ring programming language version 1.5.3 book - Part 4 of 184
PPTX
Azure deployment techniques By Arindam
PDF
Griffon Update Gr8conf 2013
PPTX
Continuous integration in games development
PDF
Concourse updates
PPTX
Gdg ionic 2
PDF
Power of React Native
PDF
Q4.11: Toolchain Process
PPTX
Git and git hub
PDF
Autoscaling event driven apps
PDF
Angular 2.0
PPT
Behat sauce
PDF
Buri2019
Using Chef and Vagrant at Gengo
DMCA #25: Jenkins - Docker & Android: Comment Docker peu faciliter la créatio...
Gab2015 sam p_danielt_emilienp_legacycodeatelier
DevOps Heroes 2019
Gitlab flow solo
The Ring programming language version 1.5.3 book - Part 4 of 184
Azure deployment techniques By Arindam
Griffon Update Gr8conf 2013
Continuous integration in games development
Concourse updates
Gdg ionic 2
Power of React Native
Q4.11: Toolchain Process
Git and git hub
Autoscaling event driven apps
Angular 2.0
Behat sauce
Buri2019
Ad

Similar to WWDC 2016 Personal Recollection (20)

PDF
Leaving Interface Builder Behind
PPTX
DevRock #01 What's new ASP.net 5
PDF
Native Payment - Part 1.pdf
PDF
Native Payment - Part 1 - Transcript.pdf
PDF
IBDesignable - CocoaConf Seattle 2014
KEY
iOS Unit Testing
PDF
I os 11
PPTX
Making React Native UI Components with Swift
KEY
L0020 - The Basic RCP Application
PPTX
從零開始學 Android
PDF
Serverless Spring - Sabby Anandan
PDF
ReactiveCocoa - TDC 2016
PDF
MBLTDev15: Egor Tolstoy, Rambler&Co
PDF
UIViewControllerのコーナーケース
PDF
Spring boot入門ハンズオン第二回
PDF
Lviv MD Day 2015 Олексій Озун "Introduction to the new Apple TV and TVos"
PDF
How to instantiate any view controller for free
KEY
漫游iOS开发指南
PPT
Testing of javacript
PDF
Quick Start to iOS Development
Leaving Interface Builder Behind
DevRock #01 What's new ASP.net 5
Native Payment - Part 1.pdf
Native Payment - Part 1 - Transcript.pdf
IBDesignable - CocoaConf Seattle 2014
iOS Unit Testing
I os 11
Making React Native UI Components with Swift
L0020 - The Basic RCP Application
從零開始學 Android
Serverless Spring - Sabby Anandan
ReactiveCocoa - TDC 2016
MBLTDev15: Egor Tolstoy, Rambler&Co
UIViewControllerのコーナーケース
Spring boot入門ハンズオン第二回
Lviv MD Day 2015 Олексій Озун "Introduction to the new Apple TV and TVos"
How to instantiate any view controller for free
漫游iOS开发指南
Testing of javacript
Quick Start to iOS Development
Ad

Recently uploaded (20)

PPTX
Presentation - Principles of Instructional Design.pptx
PDF
SaaS reusability assessment using machine learning techniques
PDF
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf
PPTX
AI-driven Assurance Across Your End-to-end Network With ThousandEyes
PDF
Data Virtualization in Action: Scaling APIs and Apps with FME
PDF
Transform-Quality-Engineering-with-AI-A-60-Day-Blueprint-for-Digital-Success.pdf
PDF
giants, standing on the shoulders of - by Daniel Stenberg
PDF
Accessing-Finance-in-Jordan-MENA 2024 2025.pdf
PPTX
Module 1 Introduction to Web Programming .pptx
PDF
Build Real-Time ML Apps with Python, Feast & NoSQL
PDF
LMS bot: enhanced learning management systems for improved student learning e...
PDF
“The Future of Visual AI: Efficient Multimodal Intelligence,” a Keynote Prese...
PDF
The AI Revolution in Customer Service - 2025
PDF
zbrain.ai-Scope Key Metrics Configuration and Best Practices.pdf
PDF
Co-training pseudo-labeling for text classification with support vector machi...
PDF
EIS-Webinar-Regulated-Industries-2025-08.pdf
PDF
Connector Corner: Transform Unstructured Documents with Agentic Automation
PDF
NewMind AI Weekly Chronicles – August ’25 Week IV
PPTX
Build automations faster and more reliably with UiPath ScreenPlay
PDF
Lung cancer patients survival prediction using outlier detection and optimize...
Presentation - Principles of Instructional Design.pptx
SaaS reusability assessment using machine learning techniques
The-2025-Engineering-Revolution-AI-Quality-and-DevOps-Convergence.pdf
AI-driven Assurance Across Your End-to-end Network With ThousandEyes
Data Virtualization in Action: Scaling APIs and Apps with FME
Transform-Quality-Engineering-with-AI-A-60-Day-Blueprint-for-Digital-Success.pdf
giants, standing on the shoulders of - by Daniel Stenberg
Accessing-Finance-in-Jordan-MENA 2024 2025.pdf
Module 1 Introduction to Web Programming .pptx
Build Real-Time ML Apps with Python, Feast & NoSQL
LMS bot: enhanced learning management systems for improved student learning e...
“The Future of Visual AI: Efficient Multimodal Intelligence,” a Keynote Prese...
The AI Revolution in Customer Service - 2025
zbrain.ai-Scope Key Metrics Configuration and Best Practices.pdf
Co-training pseudo-labeling for text classification with support vector machi...
EIS-Webinar-Regulated-Industries-2025-08.pdf
Connector Corner: Transform Unstructured Documents with Agentic Automation
NewMind AI Weekly Chronicles – August ’25 Week IV
Build automations faster and more reliably with UiPath ScreenPlay
Lung cancer patients survival prediction using outlier detection and optimize...

WWDC 2016 Personal Recollection