いがにんのぼやき

WEBエンジニアのブログ。IT、WEB、バンド、アニメ。

Sansan × Sony アプリ勉強会

sansan.connpass.com

参加してきました。
その時の雑な自分用メモを公開します。

脱・孤独のiOSアプリ開発

自己紹介

Sansan
四方 裕
海自から大学に行ってSIer
転職したときMonacaの開発メンバーだった

現状

iOSでSansanのアプリを新卒2年目社員が保守をしていた
2人目の開発者として参加した時、開発からレイアウト、言語リソース、プロジェクトファイル、証明書までコンフリクトした

対策

Storyboardをできる限り分離した、1画面ひとつに
.stringsファイルを機能単位で分割
.mergepbxでプロジェクトファイルをマージする
Xcodeで実機ビルドした際に表示されるFix Issueは押すと証明書が置き換えられてしまうので注意!

家電とつながるアプリ

Sony
近藤 亮
Video & TV Sideview
部署では新しい優れたユーザ体験の追求、トータルで商品開発

高度な操作はアプリで、シンプルな操作はリモコンで、と住み分けを行う
家電のディスプレイの代替に
出先で再生ができる

家電をパーソナライズ

家電は家族で共有していたが、これからはパーソナライズ 予約履歴からおすすめを表示

ircrp リモコンで使用されるプロトコル
dtccpIP

外出時
録画予約サーバーと動画視聴用サーバーがある

家電特有のプロトコル・保護技術

家電の自動発見・初期設定
UPnP SSOP Bonjour
ネットワーク上の動画の再生・管理
DLNA GoogleCast DIAL
デジタル放送番組のコンテンツ保護技術
DTCP-IP
家電を操作(リモコン)
UDPとかいろいろ

注意すべき点

家電にリクエストを投げて帰ってこなければWOLの施行
ハードの性能面
タイムアウト処理、エラー処理
状態ずれ・契合に注意
いつでも外部リクエストをうけられる設計、排他制御をしっかり
家電側のセキュリティ対策、保持する情報は最低限にしよう
しっかり外部操作の認証を行わないと、Botとして乗っ取られたりするので注意

グロースハック

データドリブンによるアプリ改善を行ってきた
スクラム開発で機敏に開発している

コード共有ツール J2ObjC

Sony
福田
チームとしてはAndroidが得意
j2ObjCはコマンドラインで実行
Google製のOSS
JavaからObjective-Cのコードを生成
UIはプラットフォームネイティブで開発していこうというスタンス
Android依存を切っていき、変換
MakefileやJenkinsを扱えるといいかも

JUnitのテストコードも変換されるので変換後もそのままテストできる!
導入には開発のライフサイクルをしっかり決めよう
デバッグは両方を見る必要がある

※この度過去に参加したイベントのメモなどを公開することにしたので、投稿日時をイベント当日に変更してあります。