SlideShare uma empresa Scribd logo
1 de 22
Baixar para ler offline
PhotoKit入門 
2014/9/18 クラスメソッド 平屋 
Copyright © Classmethod, Inc. 1
Copyright © Classmethod, Inc. 
自己紹介 
平屋 真吾 
• クラスメソッド株式会社 
• iPhoneアプリサービス事業部 
• iOSアプリ開発 3年 
2
Copyright © Classmethod, Inc. 
PhotoKit 
• iOS 8で新規追加 
• 「写真」アプリで管理されている写真やビ 
デオを扱うための機能を提供 
• PhotoKit 
• Photos Framework 
• PhotosUI Framework 
3
• PhotoKit 
• Photos Framework ← 
• PhotosUI Framework 
Copyright © Classmethod, Inc. 4
Photos Framework 
1. 「写真」アプリと連動したモデルクラス 
2. 編集再開可能なコンテンツ編集 
3. モデルオブジェクトの変更の監視 
Copyright © Classmethod, Inc. 
5 
Photos Framework
1.「写真」アプリと連動したモデルクラス 
Copyright © Classmethod, Inc. 
6 
Photos Framework 
• 写真やビデオの自動整理(iOS 7で追加) 
• アセット 
• モーメント 
• コレクション
Photos Framework 
1.「写真」アプリと連動したモデルクラス 
アセットモーメントコレクション 
Copyright © Classmethod, Inc. 7
Photos Framework 
1.「写真」アプリと連動したモデルクラス 
PHAsset 
Collection 
PHAsset 
アセットモーメントコレクション 
Copyright © Classmethod, Inc. 8 
PHCollection 
List
2. 編集再開可能なコンテンツ編集 
• 元データを残しつつ写真を編集可 
• コンテンツの編集手順 
1. 編集に必要な情報をリクエスト 
2. 画像を取得、編集を行う 
3. PHAdjustmentDataを作成 
4. フォトライブラリに対して変更を要求 
Copyright © Classmethod, Inc. 
9 
Photos Framework
Photos Framework 
2. 編集再開可能なコンテンツ編集 
• PHAdjustmentDataは「レシピ」 
• フォーマットの識別子とバージョン 
• 編集の再開に必要なデータ 
• オリジナルデータは「写真」アプリが保持 
• PHAdjustmentDataがあれば編集を再 
現可能 
Copyright © Classmethod, Inc. 
10
3. モデルオブジェクトの 
Copyright © Classmethod, Inc. 
変更の監視 
• PHPhotoLibraryChangeObserverプロ 
トコルを使用 
• プロトコルの採用を宣言 
• オブザーバーとして登録 
• プロトコルのメソッドを実装 
• 他のアプリでの変更内容を取得できる 
11 
Photos Framework
• PhotoKit 
• Photos Framework 
• PhotosUI Framework ← 
Copyright © Classmethod, Inc. 
12
PhotosUI Framework 
• Photo Editing Extension作成時に使用 
Copyright © Classmethod, Inc. 
13 
PhotosUI Framework 
「写真」アプリExtension
Photo Editing Extensionの作成手順 
Copyright © Classmethod, Inc. 
(1) 
• Extension用のターゲット作成 
14 
PhotosUI Framework
PhotosUI Framework 
Photo Editing Extensionの作成手順 
(2) 
• Extention用のファイルが追加される 
! 
! 
! 
• 処理やレイアウトなどを実装 
Copyright © Classmethod, Inc. 
15
PhotosUI Framework 
Photo Editing Extensionの作成手順 
(3) 
• 本体アプリとExtensionとの間でコードを 
共有するには 
• Embedded Frameworkを使用する 
Copyright © Classmethod, Inc. 16
Photo Editing Extensionの使用手順 
Copyright © Classmethod, Inc. 
17 
PhotosUI Framework 
1.「Edit」 
をタップ 
2.左上のボタンを 
タップ 
3.使⽤用したい 
Extension 
をタップ
PhotosUI Framework 
Photo Editing Extensionの使用手順 
Copyright © Classmethod, Inc. 18 
Extension 
を有効にする 
「More」をタップ
Copyright © Classmethod, Inc. 
まとめ 
19
Copyright © Classmethod, Inc. 
PhotoKit 
• Photos Framework 
• 「写真」アプリ上の写真やビデオへのアクセスを提供 
• 「写真」アプリのようなフル機能の写真アプリを作成 
可能 
• PhotosUI Framework 
• 写真やビデオを編集する為のApp Extensionを作成可能 
20
Developers.IO iOS 8特集 
• http://dev.classmethod.jp/ 
referencecat/ios8/ 
Copyright © Classmethod, Inc. 
21
[iOS 8] iOS8勉強会 PhotoKit

Mais conteúdo relacionado

Destaque

20140918 i os8イベント_ios-history (公開用)
20140918 i os8イベント_ios-history (公開用)20140918 i os8イベント_ios-history (公開用)
20140918 i os8イベント_ios-history (公開用)
Rikitake Oohashi
 
Powerpoint ed & tech
Powerpoint ed & techPowerpoint ed & tech
Powerpoint ed & tech
kristieavalos
 
Extraordinary Words
Extraordinary WordsExtraordinary Words
Extraordinary Words
joviation
 
Presentation1
Presentation1Presentation1
Presentation1
joviation
 
Mencoba peruntungan di peternakan belut
Mencoba peruntungan di peternakan belutMencoba peruntungan di peternakan belut
Mencoba peruntungan di peternakan belut
yoga ardy permana
 
Purposeful language assessement
Purposeful language assessementPurposeful language assessement
Purposeful language assessement
meghanwasilewski
 
iOS 8 App Extension「Action」でアプリ間連携してみる
iOS 8 App Extension「Action」でアプリ間連携してみるiOS 8 App Extension「Action」でアプリ間連携してみる
iOS 8 App Extension「Action」でアプリ間連携してみる
Kosuke Ogawa
 
"アプリデザインはじめの一歩" ヤフー VS クラスメソッド iOS炎の7番勝負 #4 #yxcm
"アプリデザインはじめの一歩" ヤフー VS クラスメソッド iOS炎の7番勝負 #4 #yxcm"アプリデザインはじめの一歩" ヤフー VS クラスメソッド iOS炎の7番勝負 #4 #yxcm
"アプリデザインはじめの一歩" ヤフー VS クラスメソッド iOS炎の7番勝負 #4 #yxcm
Shingo Hiraya
 
User Scenario based UI testing with KIF
User Scenario based UI testing with KIFUser Scenario based UI testing with KIF
User Scenario based UI testing with KIF
Yusuke Kita
 

Destaque (19)

新しいTest flightの使い方(20140918)
新しいTest flightの使い方(20140918)新しいTest flightの使い方(20140918)
新しいTest flightの使い方(20140918)
 
[iOS8] 新たな線形代数ライブラリ Linear Algebra
[iOS8] 新たな線形代数ライブラリ Linear Algebra[iOS8] 新たな線形代数ライブラリ Linear Algebra
[iOS8] 新たな線形代数ライブラリ Linear Algebra
 
[iOS 8] HealthKitで変わるミライ
[iOS 8] HealthKitで変わるミライ[iOS 8] HealthKitで変わるミライ
[iOS 8] HealthKitで変わるミライ
 
[iOS 8] 測れる!パフォーマンス
[iOS 8] 測れる!パフォーマンス[iOS 8] 測れる!パフォーマンス
[iOS 8] 測れる!パフォーマンス
 
iOS 9 Bootcamp #6 UIKit
iOS 9 Bootcamp #6 UIKitiOS 9 Bootcamp #6 UIKit
iOS 9 Bootcamp #6 UIKit
 
20140918 i os8イベント_ios-history (公開用)
20140918 i os8イベント_ios-history (公開用)20140918 i os8イベント_ios-history (公開用)
20140918 i os8イベント_ios-history (公開用)
 
Powerpoint ed & tech
Powerpoint ed & techPowerpoint ed & tech
Powerpoint ed & tech
 
TICs: Una introducción para docentes
TICs: Una introducción para docentesTICs: Una introducción para docentes
TICs: Una introducción para docentes
 
Technologyintegration
TechnologyintegrationTechnologyintegration
Technologyintegration
 
Extraordinary Words
Extraordinary WordsExtraordinary Words
Extraordinary Words
 
Powerpoint ed & tech
Powerpoint ed & techPowerpoint ed & tech
Powerpoint ed & tech
 
Presentation1
Presentation1Presentation1
Presentation1
 
Mencoba peruntungan di peternakan belut
Mencoba peruntungan di peternakan belutMencoba peruntungan di peternakan belut
Mencoba peruntungan di peternakan belut
 
Purposeful language assessement
Purposeful language assessementPurposeful language assessement
Purposeful language assessement
 
Omnik solar inverter manufacturer catalog
Omnik solar inverter  manufacturer catalogOmnik solar inverter  manufacturer catalog
Omnik solar inverter manufacturer catalog
 
iOS 8 App Extension「Action」でアプリ間連携してみる
iOS 8 App Extension「Action」でアプリ間連携してみるiOS 8 App Extension「Action」でアプリ間連携してみる
iOS 8 App Extension「Action」でアプリ間連携してみる
 
"アプリデザインはじめの一歩" ヤフー VS クラスメソッド iOS炎の7番勝負 #4 #yxcm
"アプリデザインはじめの一歩" ヤフー VS クラスメソッド iOS炎の7番勝負 #4 #yxcm"アプリデザインはじめの一歩" ヤフー VS クラスメソッド iOS炎の7番勝負 #4 #yxcm
"アプリデザインはじめの一歩" ヤフー VS クラスメソッド iOS炎の7番勝負 #4 #yxcm
 
User Scenario based UI testing with KIF
User Scenario based UI testing with KIFUser Scenario based UI testing with KIF
User Scenario based UI testing with KIF
 
Energy Efficiency Methods And Techniques V.2
Energy Efficiency Methods And Techniques V.2Energy Efficiency Methods And Techniques V.2
Energy Efficiency Methods And Techniques V.2
 

Semelhante a [iOS 8] iOS8勉強会 PhotoKit

Slides for tiTokyo 2013 - Japanese version
Slides for tiTokyo 2013 - Japanese versionSlides for tiTokyo 2013 - Japanese version
Slides for tiTokyo 2013 - Japanese version
Ricardo Alcocer
 
Slides for tiTokyo 2013 - Japanese version
Slides for tiTokyo 2013 - Japanese versionSlides for tiTokyo 2013 - Japanese version
Slides for tiTokyo 2013 - Japanese version
ralcocer
 
Intalio japan special cloud workshop
Intalio japan special cloud workshopIntalio japan special cloud workshop
Intalio japan special cloud workshop
Daisuke Sugai
 
成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-
成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-
成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-
Hiroki Kondo
 

Semelhante a [iOS 8] iOS8勉強会 PhotoKit (20)

Slides for tiTokyo 2013 - Japanese version
Slides for tiTokyo 2013 - Japanese versionSlides for tiTokyo 2013 - Japanese version
Slides for tiTokyo 2013 - Japanese version
 
Slides for tiTokyo 2013 - Japanese version
Slides for tiTokyo 2013 - Japanese versionSlides for tiTokyo 2013 - Japanese version
Slides for tiTokyo 2013 - Japanese version
 
App Service の DevOps と Visual Studio Team Services 最新アップデート
App Service の DevOps と Visual Studio Team Services 最新アップデートApp Service の DevOps と Visual Studio Team Services 最新アップデート
App Service の DevOps と Visual Studio Team Services 最新アップデート
 
はじめてのASP.NET MVC5
はじめてのASP.NET MVC5はじめてのASP.NET MVC5
はじめてのASP.NET MVC5
 
モバイルHTML5サイトでの写真アップロードの最適化と業務アプリへの適用
モバイルHTML5サイトでの写真アップロードの最適化と業務アプリへの適用モバイルHTML5サイトでの写真アップロードの最適化と業務アプリへの適用
モバイルHTML5サイトでの写真アップロードの最適化と業務アプリへの適用
 
概説 Data API v3
概説 Data API v3概説 Data API v3
概説 Data API v3
 
Visual StudioやAzureからAzure DevOpsを使う
Visual StudioやAzureからAzure DevOpsを使うVisual StudioやAzureからAzure DevOpsを使う
Visual StudioやAzureからAzure DevOpsを使う
 
NET MAUI for .NET 7 for iOS, Android app development
 NET MAUI for .NET 7 for iOS, Android app development  NET MAUI for .NET 7 for iOS, Android app development
NET MAUI for .NET 7 for iOS, Android app development
 
Quickcursorに見る、アプリケーション間通信
Quickcursorに見る、アプリケーション間通信Quickcursorに見る、アプリケーション間通信
Quickcursorに見る、アプリケーション間通信
 
Dependency injection
Dependency injectionDependency injection
Dependency injection
 
Ignite UI 2012 最新情報 jQuery Mobile 編
Ignite UI 2012 最新情報 jQuery Mobile 編Ignite UI 2012 最新情報 jQuery Mobile 編
Ignite UI 2012 最新情報 jQuery Mobile 編
 
Intalio japan special cloud workshop
Intalio japan special cloud workshopIntalio japan special cloud workshop
Intalio japan special cloud workshop
 
ここ最近のJenkins新機能
ここ最近のJenkins新機能ここ最近のJenkins新機能
ここ最近のJenkins新機能
 
成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-
成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-
成長できるエンタープライズシステムを目指して-OSGiによるモジュール型アーキテクチャの実現-
 
Visual Studio 2019で始める「WPF on .NET Core 3.0」開発
Visual Studio 2019で始める「WPF on .NET Core 3.0」開発Visual Studio 2019で始める「WPF on .NET Core 3.0」開発
Visual Studio 2019で始める「WPF on .NET Core 3.0」開発
 
OSSを利用したプロジェクト管理
OSSを利用したプロジェクト管理OSSを利用したプロジェクト管理
OSSを利用したプロジェクト管理
 
Elastic on Azure Integration & Building React UI Based Search App Using Azure...
Elastic on Azure Integration & Building React UI Based Search App Using Azure...Elastic on Azure Integration & Building React UI Based Search App Using Azure...
Elastic on Azure Integration & Building React UI Based Search App Using Azure...
 
AppCodeNight testcode
AppCodeNight testcodeAppCodeNight testcode
AppCodeNight testcode
 
レスポンシブ・イメージのWordPressへの実装と4.4
レスポンシブ・イメージのWordPressへの実装と4.4レスポンシブ・イメージのWordPressへの実装と4.4
レスポンシブ・イメージのWordPressへの実装と4.4
 
FirefoxとMozillaでのSVGの取り組み
FirefoxとMozillaでのSVGの取り組みFirefoxとMozillaでのSVGの取り組み
FirefoxとMozillaでのSVGの取り組み
 

[iOS 8] iOS8勉強会 PhotoKit

  • 1. PhotoKit入門 2014/9/18 クラスメソッド 平屋 Copyright © Classmethod, Inc. 1
  • 2. Copyright © Classmethod, Inc. 自己紹介 平屋 真吾 • クラスメソッド株式会社 • iPhoneアプリサービス事業部 • iOSアプリ開発 3年 2
  • 3. Copyright © Classmethod, Inc. PhotoKit • iOS 8で新規追加 • 「写真」アプリで管理されている写真やビ デオを扱うための機能を提供 • PhotoKit • Photos Framework • PhotosUI Framework 3
  • 4. • PhotoKit • Photos Framework ← • PhotosUI Framework Copyright © Classmethod, Inc. 4
  • 5. Photos Framework 1. 「写真」アプリと連動したモデルクラス 2. 編集再開可能なコンテンツ編集 3. モデルオブジェクトの変更の監視 Copyright © Classmethod, Inc. 5 Photos Framework
  • 6. 1.「写真」アプリと連動したモデルクラス Copyright © Classmethod, Inc. 6 Photos Framework • 写真やビデオの自動整理(iOS 7で追加) • アセット • モーメント • コレクション
  • 7. Photos Framework 1.「写真」アプリと連動したモデルクラス アセットモーメントコレクション Copyright © Classmethod, Inc. 7
  • 8. Photos Framework 1.「写真」アプリと連動したモデルクラス PHAsset Collection PHAsset アセットモーメントコレクション Copyright © Classmethod, Inc. 8 PHCollection List
  • 9. 2. 編集再開可能なコンテンツ編集 • 元データを残しつつ写真を編集可 • コンテンツの編集手順 1. 編集に必要な情報をリクエスト 2. 画像を取得、編集を行う 3. PHAdjustmentDataを作成 4. フォトライブラリに対して変更を要求 Copyright © Classmethod, Inc. 9 Photos Framework
  • 10. Photos Framework 2. 編集再開可能なコンテンツ編集 • PHAdjustmentDataは「レシピ」 • フォーマットの識別子とバージョン • 編集の再開に必要なデータ • オリジナルデータは「写真」アプリが保持 • PHAdjustmentDataがあれば編集を再 現可能 Copyright © Classmethod, Inc. 10
  • 11. 3. モデルオブジェクトの Copyright © Classmethod, Inc. 変更の監視 • PHPhotoLibraryChangeObserverプロ トコルを使用 • プロトコルの採用を宣言 • オブザーバーとして登録 • プロトコルのメソッドを実装 • 他のアプリでの変更内容を取得できる 11 Photos Framework
  • 12. • PhotoKit • Photos Framework • PhotosUI Framework ← Copyright © Classmethod, Inc. 12
  • 13. PhotosUI Framework • Photo Editing Extension作成時に使用 Copyright © Classmethod, Inc. 13 PhotosUI Framework 「写真」アプリExtension
  • 14. Photo Editing Extensionの作成手順 Copyright © Classmethod, Inc. (1) • Extension用のターゲット作成 14 PhotosUI Framework
  • 15. PhotosUI Framework Photo Editing Extensionの作成手順 (2) • Extention用のファイルが追加される ! ! ! • 処理やレイアウトなどを実装 Copyright © Classmethod, Inc. 15
  • 16. PhotosUI Framework Photo Editing Extensionの作成手順 (3) • 本体アプリとExtensionとの間でコードを 共有するには • Embedded Frameworkを使用する Copyright © Classmethod, Inc. 16
  • 17. Photo Editing Extensionの使用手順 Copyright © Classmethod, Inc. 17 PhotosUI Framework 1.「Edit」 をタップ 2.左上のボタンを タップ 3.使⽤用したい Extension をタップ
  • 18. PhotosUI Framework Photo Editing Extensionの使用手順 Copyright © Classmethod, Inc. 18 Extension を有効にする 「More」をタップ
  • 19. Copyright © Classmethod, Inc. まとめ 19
  • 20. Copyright © Classmethod, Inc. PhotoKit • Photos Framework • 「写真」アプリ上の写真やビデオへのアクセスを提供 • 「写真」アプリのようなフル機能の写真アプリを作成 可能 • PhotosUI Framework • 写真やビデオを編集する為のApp Extensionを作成可能 20
  • 21. Developers.IO iOS 8特集 • http://dev.classmethod.jp/ referencecat/ios8/ Copyright © Classmethod, Inc. 21