採択
2018/08/31 16:50〜
Track D
レギュラートーク(15分)

tvOSアプリUIの勘所

tokorom 所友太

tvOSアプリはUIKitを利用してiOSアプリと同じ感覚で実装できます。ただ、実際に実装していくとフォーカスの考え方など、tvOSアプリ独自の概念を考慮しつつUI設計を進めていかならければならないことがわかってきます。そのあたり、実際に業務としてtvOSアプリを作りながら得られた知見を、WWDC 2018で発表されたtvOS 12で加わったTVUIKitなどを絡めて紹介できればと思います。

採択
2018/08/31 17:10〜
Track B
レギュラートーク(15分)

差分計算アルゴリズムを用いた高速なUITableView描画

fumito_ito fumito-ito

UITableViewをいかに高速に描画、更新するかはiOSアプリケーションの実装において頻繁に遭遇する問題です。

本セッションでは単純な reloadData を用いた場合と差分計算アルゴリズムを用いた場合で実際にどの程度の差が生じるのか検証した結果を提示します。
また、複数の差分計算アルゴリズムとその実装を比較することで、それぞれの実装が適しているケースを提示します。

採択
2018/08/31 17:10〜
Track D
レギュラートーク(15分)

プロトコルでStoryboardともっと仲良くなる

417_72ki 417.72KI

Storyboardの扱いでしばしば挙げられる問題点の1つとして、文字列を扱う事によるtypoや変更への弱さが挙げられます。
ここではProtocol Oriented Programmingを用いて、そのデメリットをできる限り解消していきます。

採択
2018/08/31 17:40〜
Track D
レギュラートーク(15分)

iOS×React Nativeのハイブリッド開発現場から伝えたい事

hotchemi Shintaro Katafuchi

QuipperではSwiftとReact Nativeのモジュールを組み合わせてiOSの開発を進めています。
標準を外れた開発体制には数多くの困難が付きまといますがそれらに取り組んでいって得られた知見をお伝えできればと思います。

Agenda:

  • 同期
  • どこから導入を進めていったか
  • 直面した課題
    • データの同期
    • Navigationの実装
  • チーム体制
  • ハイブリッド開発はアリか?
採択
2018/08/31 18:00〜
Track D
レギュラートーク(15分)

Haptic Feedback による効果的なマイクロインタラクション

tdksk Keisuke Tada

登場から早2年、もはや Haptic Feedback も含めた UI が必須と言っても過言ではありませんが、効果的に用いている事例もまだ多くないのが現状です。このトークでは、具体的な事例や HIG などから、効果的な Haptic Feedback のための考え方や、具体的なガイドライン、また、実装の tips も取り上げます。このトークを聞けば、誰でもすぐに効果的な Haptic Feedback を組み込むことができるはずです。

採択
2018/09/01 10:50〜
Track A
レギュラートーク(15分)

iPhone が数秒おきにクラッシュするんだけど!

watura watura

2017年12月1日朝起きたら,Zaim のせいでiPhoneがクラッシュすると Twitter 上で騒がれていました.
前回のリリースから多少は時間がたっていたし,そもそもアプリが iPhone をクラッシュさせるなんてできるの?
本当にZaimのせいだったのか,そもそも何が起こっていたのか.何が原因だったのか.
わかったこと,推測できたこと,喋っても問題なさそうなこと喋ります.

採択
2018/09/01 10:50〜
Track B
レギュラートーク(15分)

In-App Purchase再考 ーサーバサイドエンジニアの運用経験と他決済手段との比較を添えてー

ohbarye ohbarye

Quipperが開発する学習サービス「スタディサプリ」ではIAP(アプリ内課金)による支払いが可能です。IAPは同サービスで高いシェアを持つ人気決済手段ですが、運用者の立場では他の決済手段と比べて不満がないわけではありません。このトークでは以下のトピックを通じてiOSアプリでの課金手段について再考します。

  • サーバサイドエンジニアとしての決済運用経験(障害、サポート)
  • 他の決済手段との比較(決済手数料、管理画面の使い勝手)
採択
2018/09/01 10:50〜
Track C
レギュラートーク(15分)

iOSでSwitchの複数ディスプレイ配置調整を実装してみた

henteko07 へんてこ

先日任天堂から発表されたマリオパーティーのゲーム内で実装されている、複数のSwitchを並べた時にディプレイ間の位置を調整する素晴らしい機能を、iOSでも実装した結果を発表します。
リリースするアプリでこの技術を使おうとすると既に任天堂が特許を持っているので注意が必要です。

採択
2018/09/01 13:30〜
Track C
レギュラートーク(15分)

Charles でネットワークデバッギング

kumamo_tone Kazumasa Kumamoto

「API から何が返ってきているかわからない」「色々なパターンの返り値の表示を見てみたい」といった経験はないでしょうか?

Charles なら、通信の中身を確認することができるだけでなく、リクエスト/レスポンスの編集、リクエスト先の変更など、アプリ開発のデバッグに便利な機能を使うことができます。

この記事では Charles を使ったことがない人向けに、 Charles の基本的な使いかたと使いどころについてご紹介します。

採択
2018/09/01 13:50〜
Track C
レギュラートーク(15分)

Plasma - gRPC streamを利用したリアルタイムなユーザー体験

ra1028fe5 Ryo Aoyama

時は2018年未だに定期ポーリングを使った画面更新でリソースを無駄遣いしていませんか?
FRESHではgRPC streamを利用し、サーバープッシュ方式でイベントを受け取る事ができるミドルウェアPlasmaを開発し、リアルタイムで快適なユーザー体験を提供しています。
このトークでは、Plasmaについて実際の利用例を紹介しながらお話します。

採択
2018/09/01 14:20〜
Track B
レギュラートーク(15分)

ARKit Maniacs

shmdevelop satoshi0212

私はこの半年、ARの使用事例を集めると共にその拡張した使い方を検討してきました。その中で得たTipsを共有するとともにAREnvironmentProbeAnchor、ARWorldMapなどの効果的な使い方、空間共有の実例などをデモを交え熱く深く語りたいと思います。

採択
2018/09/01 14:20〜
Track C
レギュラートーク(15分)

LIFULL HOME'S「かざして検索」リリースの裏側

HanawaTakuro Hanawa Takuro

LIFULL HOME'S「かざして検索」は建物をかざすだけでその建物の物件情報を閲覧できるUXを提供する機能です。この機能は新たな住まいの探し方として話題となり、各種メディアで取り上げていただいています。

機能の提案からリリースに至るまでのプロジェクトの話だけでなく、物体検出機能をCoreML+Visionで実装する方法、ARKitと併用する方法、実際のプロダクトに組み込む為のテクニックなどの技術的な要素も交えてお話しします。

採択
2018/09/01 14:40〜
Track B
レギュラートーク(15分)

「QRコード読み取り?楽勝ですよ😙」=>「AVFoundationを信じたおれがバカだった😇」

monoqlo monoqlo

iOS 11から標準カメラアプリでQRコードが読み取れるようになり、
今まで以上にQRコードを活用してプロモーションを打ちやすくなりました。

ところで、標準カメラアプリはおろかAVFoundationでも正しく読み取れないQRコードがあるのをご存知ですか?
このトークでは、車検証に記載されたQRコードを読み取るために調べて実践したことを、サンプルを交えてお伝えします。

採択
2018/09/01 14:40〜
Track C
レギュラートーク(15分)

iOS × GraphQLの嬉しみとつらみ

_mogaming SeiyaMogami

GraphQLを採用したAPIサーバー(Ruby on Rails)、APIサーバー・クライアント間を橋渡しするBFF(Expressサーバー)、クライアントのiOSアプリを開発する中で、見えてきた嬉しみとつらみの話をします。
・GraphQLについてとその魅力
・なぜBFFを挟むのか
・クライアントiOSアプリとBFFのやりとり
この3つの観点で、業務を通じて得た嬉しみとつらみを語ります。インフラ面の話はしません。

採択
2018/09/01 16:00〜
Track B
レギュラートーク(15分)

UIViewとUITextInputで作る縦書きのTextView

496_ 六々

UITextViewを使わずにUITextViewのようなViewを作ることで縦書きテキストエディタを作った話。

UITextViewのあの機能が実はUITextInput由来だったりといった話や、IME周りの挙動をAndroidやUWP, Windows / macOS / Gtkで同様の縦書きエディタを作った経験を交えてお話しします。

採択
2018/09/01 16:00〜
Track C
レギュラートーク(15分)

WebSocketをiOSに持ち込んで辛い思いをした経験がありますか!?

sbntaminif taminif

はい!そこのあなた!
Firebaseの話かと思った?あれもWebSocket使ってるもんね!
違います!自社でWebSocket通信用サーバーを立てて、WebとiOSアプリで同時対応した話です!
HTTP通信じゃだめなんです!WebSocketでやる必要があるんです!
決して正解ではないかもしれないですけど、プロダクトに導入して大変な思いをした経験を話します!!

採択
2018/09/01 16:20〜
Track B
レギュラートーク(15分)

気遣いの iOS programming

eduraaa ezura

ちょっとした気遣いの積み重ねが人に優しく美しいコードを支えます。
「Swift という素晴らしい言語の力を存分に使い、人を導くコードを書く」「UIKit の癖とうまく付き合う」
これらを実現する、今すぐ小さく始められる、コード上での気遣いのテクニックをお話しします。
(iOS 開発における初級者向けセッションです)

採択
2018/09/01 16:20〜
Track C
レギュラートーク(15分)

動作確認のための社内アプリ配信サービスを新たに作った話

slightair slightair

アプリの開発中にビルドしたアプリをCrashlyticsBetaやDeployGateなどにアップロードし、手元で動作確認できるようにしているチームは多いと思います。僕たちもそういったサービスを使ってきましたが、様々な課題が出てきたため自分たちの使い方にあったシステムを新しく作りました。どういった課題がありどういうツールを用意したのか、そしてどうリリースフローが改善されたか話します。

採択
2018/09/02 10:50〜
Track A
レギュラートーク(15分)

iOSマイクロインタラクション入門

koga_wiwi kiwi

マイクロインタラクションとは、ユーザーが操作した際に表示される、ちょっとしたアニメーションやフィードバックなどのアクションのことです。
Facebookなどのアプリで積極的に採用されており、自分のアプリにも入れてみたい、という方に向けて、マイクロインタラクションの使いどころや実装例を紹介します。

採択
2018/09/02 10:50〜
Track B
レギュラートーク(15分)

プッシュ通知はどのような進化をたどってきたか

urouro_n Kenta Nakai

プッシュ通知はさまざまな進化を遂げてきました。かつてはテキストだけしか表示できなかったものが、画像やカスタムアクションを付けられるようになり、iOS 12でも様々な機能が追加されています。
このトークでは、プッシュ通知でどのようなことができるようになったか、iOSのバージョンごとに時系列を追って紹介していきます。開発時に混乱しがちな「どのバージョンからどのようなプッシュ通知の機能が使えるのか」を整理できるようお伝えできればと思います。