HackerQuest

No app, no life

趣味と実益を兼ねてプログラマをやっている者👨‍💻

iOSDC 2022 Day0 にオンライン参加してきました

今年もiOSDC2022に参加してきましたのでiwillblogしたいと思います。 Day0の内容になりますmm

ディープリンク

fortee.jp

友達招待キャンペーンなどにも使える!

アプリへユーザーを連れてくるための仕組み → ディープリンク

概念

アプリの特定のコンテンツをURIで表現 対象のURIをリクエウスとした際にアプリの特定のコンテンツにアクセスするためのもの

アプリの特定の画面をURIで表現し、踏むとそこに遷移させること

特定のウェブサイトに関連づけられたアプリがインストールされている場合ウェブサイトURLから直接アプリ内のコンテンツを開けるようになるもの

カスタムURLスキームとは?

https, http以外の独自のスキームを識別して対応するアプリを開くことができる機能 悪用される危険性がある

インストールされていないアプリを対象としたディープリンク

ディファードディープリンク

アプリインストール後に起動された後、目的のコンテンツへ誘導することができる iOSクリップボードを使う Android → 公式の機能がある

ディープリンクを手軽に利用できるようにするためのサービス - Firebase Dynamic Links - Adjust

ユーザー状態や複数経路 Crossroadというライブラリで複数のリンクからの流入を一つ乗るウーと定義で多様な経路からの流入に対応できる

Firebase Dynamic links builderで招待リンクなどに使うURLの短縮URLを作ることができる

感想

Androidにはディファードディープリンクの仕組みが公式であるのにiOSにはなく、クリップボードを使って頑張っているのは辛い さらにiOS16からはクリップボード周りの権限が厳しくなるのでApple様にはそろそろ公式のディファードディープリンクの仕組みを用意していただきたいなと思った、あとFirebase便利

PiPを応用した配信コメントバー機能の開発秘話と技術の詳解

fortee.jp

ミラティブは配信アプリ → 視聴者がいる 配信者は基本的にミラティブアプリを開いていない → これまではPush通知でコメントを表示していた

R&Dチームが試作品を作り、技術的に何ができるのかできないのか PMやデザイナーに伝えていた

画面共有中のPush通知がiOS15.1からデフォルトオフになったため事故 → PiPの後押しとなった

更新頻度は1秒に一回

Unityのアバター描画とPiPの更新がメインスレットで走るため処理を軽くしないと画面がチラついてしまう 更新頻度が低いものをあらかじめ画像として用意して、更新するものを画像の上に置いていく方式で解決

感想

開発ストーリーが完璧だった PiPの新機能に最初から目をつけていたR&Dチームの人たちもすごい 未知の領域を開拓していく技術力に感動しました

MLOps for CoreML

fortee.jp

機械学習を実践投入する際にいい感じに運用していくための諸々

  • モデルの継続的トレーニング 学習パイプラインの自動化をするのが大事 実験を多く回せるようにする

パイプラインの実行を自動化 → 時間と共にモデルの推論制度が劣化するため 精度を監視してトリガー実行 モデルの継続的トレーニング Continuous Training (CT)

CoreML → オンデバイス上で推論・学習を行う機械学習フレームワーク Appleのデバイスの性能を最も活かせるのはCoreML

TensorFlowモデルをCoreMLモデルに変換するだけで、300%の高速化する場合もある

MLflow ローカル環境で軽量に利用できる

GitHub - mlflow/mlflow: Open source platform for the machine learning lifecycle

iCloudの機能でモデルだけ更新できる

感想

CTという概念を初めて知った 基本的に自分は一度作ったモデルはそのままにしてしまっていたので、とりあえず更新するところから初めて、ひとつひとつ自動化していきたいなと思いました CoreMLに変換することでAppleバイスの真の性能を引き出せる

Ryo Tsuzukihashi