Submit Search
Upload
iOS豆知識ver0.0.5
•
4 likes
•
14,031 views
ppengotsu Name
Follow
iOS豆知識ver0.0.5 最新はhttps://blog.ppen.info/wp/?p=269
Read less
Read more
Technology
Report
Share
Report
Share
1 of 107
Download now
Download to read offline
Recommended
はじめてのiOSアプリ開発 ①
はじめてのiOSアプリ開発 ①
Nagamine Hiromasa
Swift勉強会
Swift勉強会
Nagamine Hiromasa
ようこそ! Swift Playgroundsへ
ようこそ! Swift Playgroundsへ
KinkumaDesign
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
Masaru Gushiken
Swift入門
Swift入門
聡 中川
これからはじめる SwiftPlayground入門
これからはじめる SwiftPlayground入門
Hiramatsu Ryosuke
Swift playgroundsでアプリを作る
Swift playgroundsでアプリを作る
FromF
【Swift】 それ、enumとstructでやってみましょう!!
【Swift】 それ、enumとstructでやってみましょう!!
Yu Tanaka
Recommended
はじめてのiOSアプリ開発 ①
はじめてのiOSアプリ開発 ①
Nagamine Hiromasa
Swift勉強会
Swift勉強会
Nagamine Hiromasa
ようこそ! Swift Playgroundsへ
ようこそ! Swift Playgroundsへ
KinkumaDesign
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
Apple審査を一発通過!iOS開発経験0でも出来るじげん流Swift開発のすべて
Masaru Gushiken
Swift入門
Swift入門
聡 中川
これからはじめる SwiftPlayground入門
これからはじめる SwiftPlayground入門
Hiramatsu Ryosuke
Swift playgroundsでアプリを作る
Swift playgroundsでアプリを作る
FromF
【Swift】 それ、enumとstructでやってみましょう!!
【Swift】 それ、enumとstructでやってみましょう!!
Yu Tanaka
iOSアプリ開発のためのSwiftビギナーズ勉強会 第6回 @Co-Edo
iOSアプリ開発のためのSwiftビギナーズ勉強会 第6回 @Co-Edo
Megumi Otani(Czenhe)
福井スマートフォンハッカソン Titanium Mobileの紹介
福井スマートフォンハッカソン Titanium Mobileの紹介
Mori Shingo
Swiftビギナーズ倶楽部 vol.2
Swiftビギナーズ倶楽部 vol.2
Kanako Kobayashi
Embedded framework and so on
Embedded framework and so on
toyship
【ヒカ☆ラボ】初心者向けSwiftアプリのリファクタリング
【ヒカ☆ラボ】初心者向けSwiftアプリのリファクタリング
leverages_event
快適なVRコンテンツ制作に必要な情報源のまとめ
快適なVRコンテンツ制作に必要な情報源のまとめ
Yuichi Ishii
Approach of Prototyping for making Application User Interface about iOS
Approach of Prototyping for making Application User Interface about iOS
Fumiya Sakai
iOS 8/Swift 概要 #ios8yahoo
iOS 8/Swift 概要 #ios8yahoo
Hiramatsu Ryosuke
チーム開発にSwiftLintを導入してみた・詳細版
チーム開発にSwiftLintを導入してみた・詳細版
Ikada Kaori
部品に切り分けて考えるView構造とライブラリを上手に活用したUI実装
部品に切り分けて考えるView構造とライブラリを上手に活用したUI実装
Fumiya Sakai
既存プロジェクトにSwiftLintを導入した話
既存プロジェクトにSwiftLintを導入した話
akatsuki174
Fundamentals of Swift & Redux (ReduxとSwiftの組み合わせ)
Fundamentals of Swift & Redux (ReduxとSwiftの組み合わせ)
Fumiya Sakai
iOS 8 Widget ~ 導入から Tips まで
iOS 8 Widget ~ 導入から Tips まで
Yuki Tanabe
ライブラリやView構造を有効活用して iOSアプリのUIをオシャレにするワザ紹介
ライブラリやView構造を有効活用して iOSアプリのUIをオシャレにするワザ紹介
Fumiya Sakai
デザイナー→Webエンジニア→iOSエンジニアと渡り歩いた僕なりのSwiftとの向き合い方と生かす戦略
デザイナー→Webエンジニア→iOSエンジニアと渡り歩いた僕なりのSwiftとの向き合い方と生かす戦略
Fumiya Sakai
iPhoneアプリ開発の歩き方〜Swift編〜
iPhoneアプリ開発の歩き方〜Swift編〜
Yusuke SAITO
Device Farm を使ったスマホアプリの自動テスト
Device Farm を使ったスマホアプリの自動テスト
健一 辰濱
Jenkins on-mac
Jenkins on-mac
yuichi takeda
Appium を使って iOS / Android の UI テストを共通化
Appium を使って iOS / Android の UI テストを共通化
健一 辰濱
動画プレイヤーアプリの開発を通じて学んだ機能を実現するための要点解説
動画プレイヤーアプリの開発を通じて学んだ機能を実現するための要点解説
Fumiya Sakai
アドベント2015ios基礎
アドベント2015ios基礎
ppengotsu Name
第1回 コデアルiOSアプリ勉強会
第1回 コデアルiOSアプリ勉強会
codeal
More Related Content
What's hot
iOSアプリ開発のためのSwiftビギナーズ勉強会 第6回 @Co-Edo
iOSアプリ開発のためのSwiftビギナーズ勉強会 第6回 @Co-Edo
Megumi Otani(Czenhe)
福井スマートフォンハッカソン Titanium Mobileの紹介
福井スマートフォンハッカソン Titanium Mobileの紹介
Mori Shingo
Swiftビギナーズ倶楽部 vol.2
Swiftビギナーズ倶楽部 vol.2
Kanako Kobayashi
Embedded framework and so on
Embedded framework and so on
toyship
【ヒカ☆ラボ】初心者向けSwiftアプリのリファクタリング
【ヒカ☆ラボ】初心者向けSwiftアプリのリファクタリング
leverages_event
快適なVRコンテンツ制作に必要な情報源のまとめ
快適なVRコンテンツ制作に必要な情報源のまとめ
Yuichi Ishii
Approach of Prototyping for making Application User Interface about iOS
Approach of Prototyping for making Application User Interface about iOS
Fumiya Sakai
iOS 8/Swift 概要 #ios8yahoo
iOS 8/Swift 概要 #ios8yahoo
Hiramatsu Ryosuke
チーム開発にSwiftLintを導入してみた・詳細版
チーム開発にSwiftLintを導入してみた・詳細版
Ikada Kaori
部品に切り分けて考えるView構造とライブラリを上手に活用したUI実装
部品に切り分けて考えるView構造とライブラリを上手に活用したUI実装
Fumiya Sakai
既存プロジェクトにSwiftLintを導入した話
既存プロジェクトにSwiftLintを導入した話
akatsuki174
Fundamentals of Swift & Redux (ReduxとSwiftの組み合わせ)
Fundamentals of Swift & Redux (ReduxとSwiftの組み合わせ)
Fumiya Sakai
iOS 8 Widget ~ 導入から Tips まで
iOS 8 Widget ~ 導入から Tips まで
Yuki Tanabe
ライブラリやView構造を有効活用して iOSアプリのUIをオシャレにするワザ紹介
ライブラリやView構造を有効活用して iOSアプリのUIをオシャレにするワザ紹介
Fumiya Sakai
デザイナー→Webエンジニア→iOSエンジニアと渡り歩いた僕なりのSwiftとの向き合い方と生かす戦略
デザイナー→Webエンジニア→iOSエンジニアと渡り歩いた僕なりのSwiftとの向き合い方と生かす戦略
Fumiya Sakai
iPhoneアプリ開発の歩き方〜Swift編〜
iPhoneアプリ開発の歩き方〜Swift編〜
Yusuke SAITO
Device Farm を使ったスマホアプリの自動テスト
Device Farm を使ったスマホアプリの自動テスト
健一 辰濱
Jenkins on-mac
Jenkins on-mac
yuichi takeda
Appium を使って iOS / Android の UI テストを共通化
Appium を使って iOS / Android の UI テストを共通化
健一 辰濱
動画プレイヤーアプリの開発を通じて学んだ機能を実現するための要点解説
動画プレイヤーアプリの開発を通じて学んだ機能を実現するための要点解説
Fumiya Sakai
What's hot
(20)
iOSアプリ開発のためのSwiftビギナーズ勉強会 第6回 @Co-Edo
iOSアプリ開発のためのSwiftビギナーズ勉強会 第6回 @Co-Edo
福井スマートフォンハッカソン Titanium Mobileの紹介
福井スマートフォンハッカソン Titanium Mobileの紹介
Swiftビギナーズ倶楽部 vol.2
Swiftビギナーズ倶楽部 vol.2
Embedded framework and so on
Embedded framework and so on
【ヒカ☆ラボ】初心者向けSwiftアプリのリファクタリング
【ヒカ☆ラボ】初心者向けSwiftアプリのリファクタリング
快適なVRコンテンツ制作に必要な情報源のまとめ
快適なVRコンテンツ制作に必要な情報源のまとめ
Approach of Prototyping for making Application User Interface about iOS
Approach of Prototyping for making Application User Interface about iOS
iOS 8/Swift 概要 #ios8yahoo
iOS 8/Swift 概要 #ios8yahoo
チーム開発にSwiftLintを導入してみた・詳細版
チーム開発にSwiftLintを導入してみた・詳細版
部品に切り分けて考えるView構造とライブラリを上手に活用したUI実装
部品に切り分けて考えるView構造とライブラリを上手に活用したUI実装
既存プロジェクトにSwiftLintを導入した話
既存プロジェクトにSwiftLintを導入した話
Fundamentals of Swift & Redux (ReduxとSwiftの組み合わせ)
Fundamentals of Swift & Redux (ReduxとSwiftの組み合わせ)
iOS 8 Widget ~ 導入から Tips まで
iOS 8 Widget ~ 導入から Tips まで
ライブラリやView構造を有効活用して iOSアプリのUIをオシャレにするワザ紹介
ライブラリやView構造を有効活用して iOSアプリのUIをオシャレにするワザ紹介
デザイナー→Webエンジニア→iOSエンジニアと渡り歩いた僕なりのSwiftとの向き合い方と生かす戦略
デザイナー→Webエンジニア→iOSエンジニアと渡り歩いた僕なりのSwiftとの向き合い方と生かす戦略
iPhoneアプリ開発の歩き方〜Swift編〜
iPhoneアプリ開発の歩き方〜Swift編〜
Device Farm を使ったスマホアプリの自動テスト
Device Farm を使ったスマホアプリの自動テスト
Jenkins on-mac
Jenkins on-mac
Appium を使って iOS / Android の UI テストを共通化
Appium を使って iOS / Android の UI テストを共通化
動画プレイヤーアプリの開発を通じて学んだ機能を実現するための要点解説
動画プレイヤーアプリの開発を通じて学んだ機能を実現するための要点解説
Similar to iOS豆知識ver0.0.5
アドベント2015ios基礎
アドベント2015ios基礎
ppengotsu Name
第1回 コデアルiOSアプリ勉強会
第1回 コデアルiOSアプリ勉強会
codeal
AppCodeNight testcode
AppCodeNight testcode
Akira SUGIMOTO
Swift afterbeginner
Swift afterbeginner
Kiminari Homma
20120413 nestakabaneworkshop
20120413 nestakabaneworkshop
Yoichiro Sakurai
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
Masaru Gushiken
SwiftによるiOS開発再入門
SwiftによるiOS開発再入門
Tomoki Hasegawa
Objective-Cプログラマのためのswift導入法
Objective-Cプログラマのためのswift導入法
Tomoki Hasegawa
Swiftビギナーズ勉強会 第1回 @Co-Edo
Swiftビギナーズ勉強会 第1回 @Co-Edo
Megumi Otani(Czenhe)
Tizenネイティブアプリ開発ことはじめ
Tizenネイティブアプリ開発ことはじめ
toshihirock
DevLOVE iPhoneアプリ勉強会
DevLOVE iPhoneアプリ勉強会
Toshimitsu Takahashi
Visual Studio App Centerを公式サンプルアプリから学ぼうiOS(swift),Android(java)
Visual Studio App Centerを公式サンプルアプリから学ぼうiOS(swift),Android(java)
Shinya Nakajima
Xcode で gulp を使うお話
Xcode で gulp を使うお話
Yoichiro Sakurai
アプリ開発の境界問題を支えるツール
アプリ開発の境界問題を支えるツール
Keishi Hosoba
2017年のiOSアプリ開発におけるCI事情
2017年のiOSアプリ開発におけるCI事情
Toshiyuki Hirata
iQONの開発手法 at iQONエンジニアセミナー
iQONの開発手法 at iQONエンジニアセミナー
Imamura Masayuki
iPhone/Android アプリをまとめて省エネ開発する技術
iPhone/Android アプリをまとめて省エネ開発する技術
vaccho
Swift afterbeginner
Swift afterbeginner
Kiminari Homma
Device Farm を使ったスマホアプリの自動テスト
Device Farm を使ったスマホアプリの自動テスト
健一 辰濱
SnapDishの事例
SnapDishの事例
Fumikazu Kiyota
Similar to iOS豆知識ver0.0.5
(20)
アドベント2015ios基礎
アドベント2015ios基礎
第1回 コデアルiOSアプリ勉強会
第1回 コデアルiOSアプリ勉強会
AppCodeNight testcode
AppCodeNight testcode
Swift afterbeginner
Swift afterbeginner
20120413 nestakabaneworkshop
20120413 nestakabaneworkshop
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
あなたも出来る!webエンジニアがSwiftでリリースするためにやったこと
SwiftによるiOS開発再入門
SwiftによるiOS開発再入門
Objective-Cプログラマのためのswift導入法
Objective-Cプログラマのためのswift導入法
Swiftビギナーズ勉強会 第1回 @Co-Edo
Swiftビギナーズ勉強会 第1回 @Co-Edo
Tizenネイティブアプリ開発ことはじめ
Tizenネイティブアプリ開発ことはじめ
DevLOVE iPhoneアプリ勉強会
DevLOVE iPhoneアプリ勉強会
Visual Studio App Centerを公式サンプルアプリから学ぼうiOS(swift),Android(java)
Visual Studio App Centerを公式サンプルアプリから学ぼうiOS(swift),Android(java)
Xcode で gulp を使うお話
Xcode で gulp を使うお話
アプリ開発の境界問題を支えるツール
アプリ開発の境界問題を支えるツール
2017年のiOSアプリ開発におけるCI事情
2017年のiOSアプリ開発におけるCI事情
iQONの開発手法 at iQONエンジニアセミナー
iQONの開発手法 at iQONエンジニアセミナー
iPhone/Android アプリをまとめて省エネ開発する技術
iPhone/Android アプリをまとめて省エネ開発する技術
Swift afterbeginner
Swift afterbeginner
Device Farm を使ったスマホアプリの自動テスト
Device Farm を使ったスマホアプリの自動テスト
SnapDishの事例
SnapDishの事例
More from ppengotsu Name
チャットツールをSlackだけにしたい話ver1 00
チャットツールをSlackだけにしたい話ver1 00
ppengotsu Name
ナフダンアプリ
ナフダンアプリ
ppengotsu Name
前回発表したアプリを完成させた話
前回発表したアプリを完成させた話
ppengotsu Name
社内発表会
社内発表会
ppengotsu Name
ダークサラリーアプリ企画書(Ver:0.01)
ダークサラリーアプリ企画書(Ver:0.01)
ppengotsu Name
金沢アプリコンテスト2013_1次審査_佐久間捷矢
金沢アプリコンテスト2013_1次審査_佐久間捷矢
ppengotsu Name
プレゼンクン 紹介
プレゼンクン 紹介
ppengotsu Name
More from ppengotsu Name
(7)
チャットツールをSlackだけにしたい話ver1 00
チャットツールをSlackだけにしたい話ver1 00
ナフダンアプリ
ナフダンアプリ
前回発表したアプリを完成させた話
前回発表したアプリを完成させた話
社内発表会
社内発表会
ダークサラリーアプリ企画書(Ver:0.01)
ダークサラリーアプリ企画書(Ver:0.01)
金沢アプリコンテスト2013_1次審査_佐久間捷矢
金沢アプリコンテスト2013_1次審査_佐久間捷矢
プレゼンクン 紹介
プレゼンクン 紹介
Recently uploaded
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
Ryo Sasaki
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
sugiuralab
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Toru Tamaki
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Yuma Ohgami
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
taisei2219
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
danielhu54
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
iPride Co., Ltd.
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
Toru Tamaki
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
Toru Tamaki
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
Hiroki Ichikura
Recently uploaded
(10)
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
Postman LT Fukuoka_Quick Prototype_By Daniel
Postman LT Fukuoka_Quick Prototype_By Daniel
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
iOS豆知識ver0.0.5
1.
iOS開発豆知識 佐久間 捷矢(ppengotsu) ver:0.0.5(開発途中)
2.
私 • 佐久間 捷矢 • twitter:ppengotsu •
ブログ:https://blog.ppen.info/ • iOSアプリの開発の仕事 ‣ 最近は、VRとかUnityもちょっと手を出しは じめたー。iOSはSwiftで書きたい派
3.
このスライドとは • 対象:iOSエンジニア以外も(ディレクターとか) • 内容:iOSアプリ開発について知っておいた方が いいなーと思う事 •
間違いがあったら、コメントください ‣ Twiiterでppengotsu宛でもなんでも
4.
プッシュ通知 Swift Swift Swift Swift Swift Swift Swift ATS問題 強制アップデート SearchAPI ストアリジェクト 多言語対応 開発周期 QuickAction センサ Androidとの違い
5.
Swift
6.
Swiftとは • diOSアプリを開発するために使う言語 • 古いものをObjective-Cという •
日本語と英語なぐらい違う • 現在は、バージョン2 • 公式:https://developer.apple.com/ swift/
7.
なぜ、Swift? • プログラマーには、書きやすい • AppleがObjective-CをSwiftに寄せてる。。 ‣
Objective-CからSwiftへ自動変換のため? ‣ Swiftがそろそろ生まれて2年。。 ➡ Objective-Cでの寿命も残りわずか? ➡ 突然のサポート外!! ➡ Swiftで作るしかない!!!
8.
Swiftにすると幸せ? • プログラマーはモチベ上がります • QiitaとかみるとObjective-Cの新しい記事がほ ぼない。。。 •
Swiftの新しい記事は多い • 本もSwiftばっか。 • 勉強会もSwiftばっか • WWDC(Appleの発表会)もサンプルはSwift
9.
オープンソースだ • GitHubで公開された ‣ https://github.com/apple/swift
10.
オープンソースだ • Swiftがオープンソースになったぜ。 ‣ サーバ側も対応 ➡
http://www.moongift.jp/2015/12/ perfect-%E3%82%B5%E3%83%BC %E3%83%90%E3%82%B5%E3%82%A4 %E3%83%89%E3%81%A7%E5%8B %95%E4%BD%9C %E3%81%99%E3%82%8Bswift%EF%BC %81/
11.
どう変わった? • Swiftの開発に世界中から意見やソースが注がれ る ‣ どんどんよくなるはず •
今後の動きがわかる ‣ 新しいSwift3が、2016秋公開とか • サーバ側もSwiftで開発できる • MacOS X以外にもLinuxでも動く
12.
今後の対応 • Swift2.2を2016春リリース予定 • Swift3を2016秋リリース ‣
Swift3では、破壊的変化があるので、すくな くとも半年前から対応する必要があるでしょ う。
13.
プッシュ通知
14.
プッシュ通知とは • 右みたいのみた事ありますよね? • ユーザにお知らせを出したり 時間を通知したりできる。 ‣
ユーザにアプリの存在をアピール ➡ ユーザが戻ってくるかも ➡ アプリが継続利用されるかも SmartNewsさんの例
15.
プッシュの仕組み • 普通のプッシュ通知するとき Appleサーバユーザ あなたのサーバ 1:〇〇IDに プッシュ送って 2:プッシュ送信 3:画面に通知。 音もなったり
16.
プッシュの仕組み • ローカルプッシュ通知するとき Appleサーバユーザ あなたのサーバ 2:画面に通知。 音もなったり 1:通知送信
17.
プッシュの仕組み • サイレントプッシュ通知するとき Appleサーバユーザ あなたのサーバ 1:〇〇IDに プッシュ送って 2:プッシュ送信 3:画面に通知。 音もなったり
18.
プッシュ使い分け • 普通のプッシュ ‣ お知らせなど出すときに。 ‣
サーバの状態によって出したり。 • ローカルプッシュ ‣ 端末の状態だけで決まるお知らせ。 • サイレントプッシュ+ローカルプッシュ ‣ ダウンロードが終わった時に通知したいとき
19.
プッシュ注意 • 送りすぎてはいけない。 ‣ 昔、やたらプッシュうつアプリがありました ‣
うざいのである。 ➡ ユーザがアンインストールするかも
20.
プッシュ注意 • プッシュを送る前に事前に許可を求める必要あ り 妖怪ウォッチぷにぷにさん の例
21.
プッシュ注意 • 事前の許可は、起動直後でなくてよい ‣ チュートリアル終わった後 ‣
ある程度アプリ起動されたら ➡ ユーザが、いいなと思うタイミングで許可 をもらうとスムーズかも。
22.
ATS問題
23.
ATS • iOS9から対応必須 ‣ ネット通信に制限 ➡
通信を暗号化するものしか使えない(https) ➡ http://blog.ppen.infoみたいにhttpで始ま るものにアクセスできなくなる
24.
ATS、なにが問題? • APIは全てhttpsで通信してますか? • ブログは、httpsでアクセスできますか? •
会社のホームページは大丈夫? • Safariからも開けなくなるかも? • Google検索もhttpsじゃないと不利っぽいよ ‣ http://googlewebmastercentral- ja.blogspot.jp/2014/08/https-as-ranking- signal.html
25.
ATS対応ってええの? • httpsに対応した ‣ 通信が暗号化されます。 ‣
指定したサーバと通信していることがだいた い保証されます。 ‣ https2やSpdyに対応できます。 ➡ 詳しくはかかないけど、webページの読み 込みが早くなったりする。
26.
ATSに対応したい • SSL証明書を入手だ • 無料も有料もあるよ ‣
企業レベルで、存在を証明できるかどうかとか 違う。 ‣ https://www.symantec.com/ja/jp/products- solutions/families/?fid=ssl-certificatesd • http://www.websec-room.com/ 2015/11/30/2363
27.
強制アップデート
28.
強制アップデート? • アプリを久しぶりに起動 ‣ AppStoreに飛ばされた ‣
アップデートしろってアラートがで続ける • 上記みたいなことなかっただろうか?
29.
なぜ? • 最新のアプリをつかってほしいから • アプリとwebサイトの最大の違い ‣
アプリは、古いものをいつまでも使える ➡ バグがあってもそのまま使われちゃう
30.
なぜ? • 市場でアプリのバージョンがバラバラだとサポー トが大変!! ‣ APIをそれぞれのアプリバージョンごとに準備 するなんてくそ!! •
ユーザが、手動更新してくれるなんて考えられな い
31.
どうすればええの? • アプリ起動時に、サーバのサポートアプリバージョ ンを取得するようにする • APIアクセスするときにサーバのサポ∼とアプリ バージョンみるようにするなど •
絶対強制アップデートするって必要はない ‣ プッシュと同じで、アップデート間隔が短いア プリだとうざくなってしまう
32.
SearchAPI
33.
SearchAPIって • iOS9から、SpotLightが復活 ‣ 検索対象が、アプリやwebサイ トになったよ COMICOさんの例
34.
検索対象に登録 • アプリから検索対象にしたいものを登録できる ‣ アイコンやタイトル、説明などなど •
登録範囲 ‣ 端末内だけに登録 ‣ 他のユーザにも見えるように登録 ➡ 個人情報でないものは、他のユーザに見える 登録でよさそう。
35.
なにがええの? • 他のユーザに見えるように登録すると、アプリ インストールを促せる • アプリの履歴に、簡単アクセスできるようにな る。 •
まだ、すごいってアプリがないので狙い目? ‣ 参考:http://qiita.com/mono0926/items/ 27af791065ed919255e0 • 今後、どんどん使われていくかも
36.
参考 • web対応チェック ‣ 公式 ➡
https://search.developer.apple.com/ appsearch-validation-tool/
37.
ストアリジェクト
38.
Appleの審査 • Appleが提供しているストアに iOS ,AppleTV,Macでのアプリを出すには 審査があります •
申請してから、2週間ぐらいで結果が帰ってき ます。 • リジェクト→不合格→審査→リジェクト→。。
39.
リジェクト理由 • よく聞くのを、下記に示す ‣ アプリが単純すぎる ➡
機能が単発だと言われちゃう ‣ バグでアプリが落ちる ➡ 審査中にアプリが落ちると言われます。審査 はちょっと特殊な環境のときがあります。リ ジェクトされたときに、動作環境を聞いてみ よう
40.
リジェクト理由 • エロすぎる • ユーザの体験を邪魔する ‣
Appleのストアで、エロのは出せません。 ‣ ユーザ体験を邪魔してはいけない。 ➡ あるけどって思った? ➡ まっくろな方法がある。
41.
ストアリジェクト 真っ黒な対策
42.
審査の抜け道 • 審査が問題 ‣ 審査を通過したい。。。 ➡
審査の時だけ、健全な挙動すれば。。。 • 上記のように、審査中だけ健全な挙動だけすれ ば審査に通るらしい。 ‣ リリースしたあとに、不健全に!! ‣ Appleにばれるとバンされます
43.
審査に必要なもの • 審査は、実際にアプリを使われます ‣ ライブラリを自動検索して、だめなものをつ かっているとバレます。 ‣
ログインが必要なアプリの場合は、テストアカ ウントを教えてあげましょう。 ‣ 審査までに、サーバの実装は終わっている必 要があります。
44.
審査に必要なもの • アプリのスクリーンショットや、iTunesでの説 明文やアプリ規約文書などです • アプリの動作がわかりにくい場合は、動作中の 動画をとっておくといいですね。審査で必要って いわれるかも
45.
ストアその他 • ストアは、各国ごとにそれぞれ分かれています。 ‣ なので、各国ごとに、ダウンロードできるア プリが違います。 ➡
例えば、アメリカのストアにAアプリあるけ ど、日本のストアにはないなど
46.
トップを狙え
47.
トップを狙えとは • AppStoreでおすすめに乗る ‣ 新しいiOSの機能を使ってい と選ばれやすそうに見える ‣
AppleWatchが出たときは Watch対応のアプリがよく でていたようなかんじ
48.
乗ると • タダで、宣伝になる • 乗ると自慢できそう ‣
僕はのったことまだない。。。 • ランキングよりうもれることがなさそう ‣ ランキングは、闇。お小遣い稼ぎアプリと か。。。ちょっとずつ浄化してるけど。。。
49.
多言語対応
50.
多言語対応 • iOSアプリは、コードで設定しておくと、 端末の設定によって表示言語が変わります。 • ストアに載ってる説明も動作環境によって表示言 語が変わります。
51.
どうすればいい? • アプリは英語に基本対応 ‣ 日本語は、追加対応にしておく ➡
すると、日本語の環境では、日本語表示 ➡ その他の言語圏では、英語で表示 ➡ 上記が、一番楽な対応です。最低でも英語あ れば、なんとかなりそう。
52.
あとで多言語対応? • 1つの言語しか対応してないと後からはほぼ無 理。。。 ‣ 自分がそうでした。。。。 ‣
コードで多言語に対応するには、それようの コードを前もって書く必要がある。 ‣ 工数さえあれば、できなくないけど。。。
53.
開発
54.
開発 • 開発で使うツール、環境など書く
55.
開発環境 • Mac 系列のPC ‣
比較的新しいMacbook系がいいです ‣ MacProがいいです。 • Xcode ‣ Appleが提供するエディタ ‣ 無料 ‣ これで十分 • Swift ‣ プログミング言語。今はこれ使え。
56.
開発環境 • Unity,UnrealEngine ‣ ゲーム作るなら使うもの ‣
3Dや2Dのものを扱いやすくしたエディタ ‣ このごろ無料になった ‣ 有料の機能を使うともっとすごい
57.
開発アカウント • ストアに出すには、年間約1万払って、アップル デベロッパーアカウントを取得 ‣ 実機にインストールするだけなら、このごろ無 料になった。Xcode7を使うとできる。 •
社内配布専用のデベロッパーアカウントもある ‣ 有料 ‣ ストアでなく、社内だけで配布できる ‣ テストで、社内配布するならほしいもの
58.
iOSのCI • iOSでも継続インテグレーション • CircleCI,TravisCI ‣
自動でビルドしてくれる環境 ‣ Gitにプッシュしたら、テスト実行とか • Jenkins ‣ 自前で、ビルド、テスト実行や配布などを行え る
59.
iOSのCI • fastlane ‣ 最新のツール ‣
ビルド、テスト配布、ipa作成、アプリ申請などが 自動化 ‣ まだつかったことないです。。 ‣ 上記であげたものは、開発においてめんどうなと ころなので、自動化できるとよい! ‣ 参考:http://qiita.com/appwatcher/items/ a3280ecdef7e4d9e5e24
60.
テスト配布 • アプリをテストするために、配布する • DeployGate ‣
もともとmixiのツールだったはず ‣ インストールが簡単。Androidもできる • TestFlight ‣ Appleが買収したツール ‣ iOS対応。Android無理になった
61.
テスト配布 • Crashlytics ‣ iOS,Android対応 ‣
クラッシュレポートでも有名 ‣ 参考:http://dev.classmethod.jp/ smartphone/iphone/ios-fabric-crashlytics- beta-distribution/
62.
新しいiOS
63.
新しいiOS • 毎年でます • 新しいiPhoneと一緒に出ます •
毎年9月ぐらいに出ます。 • 6月ぐらいの発表会で、新しいiOSのベータが開 発者に配布されます。 ‣ 6月から9月までの間に対応する必要がありま す。
64.
新しいiOSに対応? • 新しいXcodeを基本使います • 新しいiOSでは、今まで使えたコードが使えな い、挙動が違う問題が起きたりします。 ‣
新しいiOSで、代わりのコードを使って修正 ‣ 新しいコードの方が、使いやすくなっていた りします
65.
対応すると? • iOS9に対応すると ‣ SearchAPI ‣
外部リソースダウンロード機能 ‣ QuickAction • などのユーザ体験に影響与えるものを使える。
66.
対応しないと? • iOS9上では、互換モード動作 ‣ ATS問題なんて起きない •
基本、そのままでも動きます。 ‣ 新しい機能が使えない。 ‣ もし、端末のサイズが大きいとアプリ内の画 像がぼやけるかも
67.
対応方法 • 6月にベータ版が、開発者に配布されます ‣ 実機にインストールしてアプリ動作確認できま す •
9月ごろに正式版が公開されます ‣ 一般のユーザに配布されます。 ‣ 最近は正式配布前に、一般ユーザにもベータ 配布っぽいのがあります。
68.
対応方法 • 6月にベータが配布されるため、6から9月の 間にベータ対応を実地する必要があります。 ‣ ただし、仮対応となります。ベータと正式版が 同じとは限らないためです。
69.
対応OS • 毎年新しいOSができます。 ‣ 今は、iOS9 ‣
バグや脆弱性がなおると、マイナーアップデー トがあります(iOS9だとiOS9.2が最新です。9 の後ろの番号増えたりします。) ‣ iPhone4S,5,5C,5S,6,6Plus,6S,6S Plus対応 ➡ 最新のOSに対応していても古い端末だとい ろいろ制限があったりします。
70.
対応OS • どのバージョンに対応するか? ‣ 古いiOS(iOS7とか)の端末でもストアからアプ リをダウンロードして使えます。 ➡
ただし、開発者が設定する最低サポートOS バージョンに依存します。
71.
対応OS • 全部に対応だ ‣ iOS6,7,8,9…………… ➡
開発者が血を吐きます。 ➡ OSのバージョンによって実装が変わりま す。。。。 ➡ 古いOSはバグや脆弱性があって安全であり ません。。。
72.
対応OS • 最低限サポートだ ‣ 今なら、iOS8.4以上対応がいいと思います。 ➡
一番新しいOS(現:iOS9)と一つ古いOSの最新 マイナーバージョン(現:iOS8.4) ➡ 最近は、一般ユーザのアップデートもはやい ためです ‣ 一番新しいOS(現:iOS9)の機能をつかっているの なら一番新しいOSのみサポートもいいですね。
73.
参考 • 公式シェア表 ‣ https://developer.apple.com/support/ app-store/ ➡
現在はiOS9が71%らしい
74.
webとの違い
75.
webとの違い • webサイト作るのと違いを書きます。 • 僕は、フロントエンジニアではないため、推測 部分、間違っている部分がでることはご了承く ださい。
76.
違い1:動作環境 • web ‣ ブラウザ内(FirefoxやGoogleChromeなど) ➡
Electronも中身はChromium ➡ コードはパースされて実行されます。 • アプリ ‣ それぞれのOS ➡ iOSなら、iOS用のに言語変換されて実行さ れます。
77.
違い1:動作環境 • web ‣ ブラウザ内(FirefoxやGoogleChromeなど) ➡
Electronも中身はChromium ➡ コードはパースされて実行されます。 • アプリ ‣ それぞれのOS ➡ iOSなら、iOS用のに言語変換されて実行さ れます。 実行効率悪い。電池を大きく消費する 最適化されるため、実行効率 が良い
78.
違い2:UI,UX • web ‣ PCかスマフォかで違う ➡
iOS,Androidで同じUIなので、ユーザがOSを行き来し ても同じ感じで使える • アプリ ‣ iOSかAndroidかで違う。 ‣ OSのバージョンによって違う ‣ 画面サイズに違う ➡ それぞれの場合に合わせたUI,UXが必要。タブレットだ からいっぱい情報を表示すればいいってものじゃない。
79.
違い3:リリース方法 • web ‣ サーバにソースコードをおくだけ ‣
いつでも入れ替え出来ます ➡ バグがあってもすぐ対応、リリースできる • アプリ ‣ ストアにアプリデータを提出 ➡ iOSアプリは、審査あり。期間2週間ぐらい ➡ Androidは、審査なし。1日ぐらい • バグがあってもすぐに対応できない
80.
違い4:データ管理 • web ‣ サーバ側に基本もつ(ユーザ名や生年月日など) ‣
クライアント側に、一時キーをもつのみ ➡ 一時キーを無効にすると強制的にサービス からサインアウトすることができる ➡ 新リリース時に強制的にログインしなおしが できる
81.
違い4:データ管理 • アプリ ‣ web同様に一時キー保持 ‣
アプリ内にある程度データ保持する ➡ アプリで高速起動に表示するため ➡ アプリを終了しても同じ画面で再開 ➡ ネットワークがなくても動作することがで きる
82.
違い5:状態 • web ‣ ユーザは、必要な時にアクセスしてwebページ をみる ‣
前回の状態は、ログイン状態ぐらいが再現さ れる
83.
違い5:状態 • アプリ ‣ ユーザは、使用した時にアプリ起動して使う ‣
アプリは、ユーザ使っていない時もデータの 更新などを行っている ‣ ユーザが再びアプリを起動した際は、最後の 状態が出来る限り高速で再現される
84.
Androidとの違い
85.
違い1:開発環境 • iOS ‣ Swift,Objective-C ‣
Macパソコンが必須です。 • Android ‣ Kotlin,Java ‣ WindowsでもMacで作れます。
86.
違い2:配布方法 • iOS ‣ Appleが提供するストアで配布 ‣
アプリを配布、更新するには、 Appleによる審査を通過する必要があります ➡ 審査が終わるまでに2週間ぐらい ➡ ある程度機能が実装されていないリジェクト される
87.
違い2:配布方法 • Android ‣ Googleが提供するストアで配布 ‣
審査なくアプリを配布できます。
88.
違い3:UI・UX • 物理ボタン ‣ iOS ➡
ホームボタン1つしかありません ➡ アプリ内でホームボタンは使えません。
89.
違い3:UI・UX • 物理ボタン ‣ Android ➡
ボタン3つあります。 ➡ 戻る、ホーム、アプリ一覧ボタン
90.
違い3:UI・UX • 物理ボタン ‣ Androidのみ戻るボタンが常にある状態 ➡
ユーザいつでも1つ前の動作、画面に戻る ことが可能 ‣ iOSは、戻るボタンがない ➡ 画面を戻るには、画面内戻るボタンがいる
91.
違い3:UI・UX • 画面遷移 ‣ Android ➡
基本、画面がかさなる遷移 ‣ iOS ➡ 画面がかさなるもの ➡ 画面が右から来てかさなるもの 12 1 2 12
92.
違い4:機種 • Android ‣ メーカーごとにいろいろでている ➡
Xperia,Galaxy,Nexus……… ➡ 機種ごとに画面の大きさやセンサーが違う • iOS ‣ 大きく分けるとiPhone,iPad ‣ 画面の大きさの種類は、少ない。センサーの違いは ある
93.
センサー
94.
iPhone6Sの場合 • TouchID指紋センサー ‣ 指紋を読み取る。パスワード入力省略 •
気圧計 ‣ 気圧がわかります。天気予報ででるのです。 • 3軸ジャイロ ‣ iPhoneの傾きがわかります。 • 加速度センサー ‣ iPhoneをどのようにふったかわかる • 近接センサー ‣ 画面に顔を近づけたかわかります。 • 環境光センサー ‣ 画面に当たる光の強さがわかります。
95.
3D Touch
96.
3D Touch • 画面を強く押したことを検知できる •
iPhone6s,iPhone6s Plusでのみ使えます。
97.
動作例 • ホームボタンのアイコンを強く押すとサブメニュー がでる • アプリ内で、プレビューを出したりするのに使 える。 •
画像リンク:http://www.apple.com/jp/ iphone-6s/3d-touch/
98.
HandOff
99.
どんなの? • 現在動作中の状態を他のデバイスに引き継げます。 ‣ iPhoneからiPhoneへ ‣
iPhoneからMacBookに ‣ MacBookからiPhoneに ‣ 簡単操作で、引き継げます。 ‣ 例:マックのサファリで開くと iPhoneで引き継げます
100.
外部ソースダウンロー ド
101.
どんなの? • アプリ内で使うデータを後からダウンロードで きる仕組み • Appleのサーバからダウンロードできる ‣
今までは、自前のサーバが必要だった
102.
メリット • 自前のサーバが必要でない • アプリインストール時に、最小容量にできる ‣
ユーザが最小限の時間でアプリを起動できる ‣ ストア配布(LTE時)の容量制限にひっかかりに くくなる
103.
• 参考リンク:https://speakerdeck.com/ nolili/on-demand-resourceswoyi-shi- sita-kontentuzhi-zuo-wakuhuro
104.
ビーコン
105.
ビーコン • Bluetoothで発信機をつくったようなもの • iPhone4S以上が対応している •
Bluetoothの設定がオンになっている必要あり • アプリで、大まかに一定範囲に入っているわかk ります 遠いエリアに入っ た!!
106.
おわりに
107.
• 今回のバージョンではこれまで。 • 途中飽きてしまったので。。。 •
大きな機能を載せ忘れていたら、更新します。
Download now