採択
2024/08/23 11:25〜
Track A
スポンサーセッション(20分)
スポンサーセッション

Appleの新しいプライバシー要件対応:ノーコード アプリプラットフォームの実践事例

Nao_RandD Nao-RandD / ナオランド

2024年5月1日以降、AppleはApp Storeへの提出におけるプライバシー要件をアップデートしました。
アプリ本体ではプライバシーマニフェストの追加が必要になり、これに加えてサードパーティーSDKではコード署名も必要になります。

プライバシー要件のアップデートは、すべてのiOSエンジニアにとって重要なトピックと言えます。
ただ、必要な対応についての情報は少なく、各社や個人でどのように対応しているかは掴みづらい状態です。

そこで本セッションでは、ヤプリで5月1日までに進めた実際の対応と、その後の運用体制を紹介していきます!

具体的には以下の内容をお話しします。

  • 新しいプライバシー要件の概要と具体的な対応の整理
  • アプリ本体へのプライバシーマニフェスト対応
  • サードパーティーSDKに対するプライバシーマニフェスト対応
  • 800アプリを扱うノーコードアプリプラットフォームでの対応と運用体制

プライバシーマニフェストとは?というところからスタートし、一般的なユースケースでの対応フローを理解した後、最後にプラットフォームでの運用体制を知っていただければと思います。

実践事例を通して、ご自身のアプリではどういった対応が必要なのかや、今後どのような運用フローとするかを検討する一助となること間違いなしです!

採択
2024/08/23 11:25〜
Track B
スポンサーセッション(20分)
スポンサーセッション

Ditto SDK 紹介: インターネットなしで快適なデータ同期

kndoshn 近藤峻輔

こんなお困りごとはございませんか?

・ 『サーバー、ネットワークの障害でアプリが使えなくなる』
・ 『現場のWi-Fiが弱く、アプリがサクサク使えない』
・ 『施設が混雑した際にネットが遅くなり、現場の業務に支障がある』
・ 『災害時に備えたいが、ハードウェア追加はコストが合わない』

Dittoは、インターネットなしでの快適なデータ同期を実現するSDKです。

自動的にメッシュネットワークを構築し、データを中継します。
また分散していてもデータがコンフリクトしない仕組みを持っています。

レストランのような、通信が売上に直結する場所、
飛行機などの、インターネットが不安定な場所での活用が増えてきています。

このセッションでは、Dittoの仕組みと使い方について詳しく紹介します。

https://ditto.live

採択
2024/08/23 11:25〜
Track C
スポンサーセッション(20分)
スポンサーセッション

働く世代に「豊かさ」を届けるためのモバイルアプリエンジニアの役割と挑戦

eh6gac4 長 俊貴

ウェルスナビは「働く世代に豊かさを」というミッションのもと、自動で資産運用を行うロボアドバイザーサービスを提供しています。
私たちの開発組織はアジャイル開発体制を採用しており、迅速かつ効率的にサービスを提供するための組織作りを進めています。

また、ロボアドバイザーサービスにとどまらず、働く世代の幅広いお金の悩みを中立的な立場からオンラインで解決する総合アドバイザリー・プラットフォーム(MAP: Money Advisory Platform)の開発にも取り組んでいます。

資産運用に特化した一つの「サービス」から、お金の悩みを解決できる「プラットフォーム」にしていくために、モバイルアプリとして必要なことは何か。

  • お金を扱うアプリとして大事なこと
  • 自分のお金を任せられるようになるアプリとは
  • ユーザーが利用したいと思ってくれるアプリに求められること
  • etc
    をテーマに、ウェルスナビにおける取り組みについて実例を交えてご紹介します。
採択
2024/08/23 11:25〜
Track D
スポンサーセッション(20分)
スポンサーセッション

開発を加速する共有Swift Package実践

el_metal_ el_metal

サイボウズではkintone、 サイボウズ Office、 Garoonの3アプリを主に開発しています。
これらのアプリは開発開始時期によって利用技術がまちまちで、認証機能など共通の機能であってもそれぞれで再実装していました。

そこで、サイボウズ Officeアプリの開発時に蓄積した経験に基づいて、共通部分をSwift Concurrencyやswift-async-algorithmsを活用した共有のSwift Packageにすることにしました。
抽象度を高めることで複数プロダクトに適用できる、機能の境界が明確な複数のPackageができました。
コードが8000行削減されたり、RxSwift/UIKitからSwiftUIへの置き換えを加速したり、それぞれのプロダクトでの課題解決が進んでいます。
この取り組みの中でWKWebViewをSwiftUIでラップするOSSも生まれました。

このトークでは、以下のトピックでサイボウズでの取り組みを紹介します。

  • 技術選定プロセス
  • 実装で大事にしたポイント
  • 共有Swift Packageの導入効果
  • 作成したPackageの運用

このトークが複数アプリでの共通化、単一アプリでのマルチパッケージ境界設計、共有コードの運用の助けとなれば幸いです。

採択
2024/08/23 14:30〜
Track A
スポンサーセッション(20分)
スポンサーセッション

月間4.5億回再生を超える大規模サービスTVer iOSアプリのリアーキテクチャ戦略

mathtanguu 小森 英明

2015年にサービスを開始したTVerは現在では月間4.5億回再生を超える大きなサービスに成長しました。
TVerのiOSアプリ開発における生産性と品質をさらに向上させ組織やプロダクトをスケール可能にするための取り組みとして、2024年度からはiOSアプリのリアーキテクチャに取り組んでいます。
本セッションでは、多くのユーザー/ステークホルダーを抱えるTVerアプリにおいてどのように事業リスクを最小化しながらリアーキテクチャプロジェクトを推進しているかについて紹介します。

<現在のアーキテクチャと目指すアーキテクチャ、その採用背景について>
・SPMを用いたマルチモジュール化
・UIKitからSwiftUIへの移行
・Design Systemの導入

<リスクを最小化するための戦略について>
・モジュールごとの段階的なリリース
・Feature Flagを用いた開放率のコントロール
・iOSのversion戦略

採択
2024/08/23 14:30〜
Track B
スポンサーセッション(20分)
スポンサーセッション

iOSアプリらしさを紐解く

avocadoneko Natsuho Ide

これまで主にWebサイトやWebアプリのデザインをしてきた私は、業務でiOSアプリをデザインするにあたり、エンジニアと「iOSアプリらしいデザイン」について議論する機会がありました。しかし私には「iOSアプリらしさ」とは何か理解できず、戸惑いを感じました。ただiOSのパーツを使うだけではiOSらしくはならず、見た目だけの問題ではないようです。

そこで私は、iOSアプリらしいデザインを分析し言語化することにしました。さまざまなアプリを観察し、Human Interface Guidelinesを読み込むことで、iOSアプリ特有の特徴があることに気づきました。

例えば、アニメーションを使用してわかりやすいインターフェースを提供し、タッチジェスチャーの活用で操作感を向上させることなどが挙げられます。これらの特徴を理解することで、見た目だけでなく、操作性やユーザー体験全体を通じてiOSらしいデザインを実現できます。

この登壇では以下の内容をお伝えします。

  1. iOSアプリらしさとは何かの考察と私なりの解釈
  2. iOSアプリらしさについて、Human Interface Guidelinesのデザイン原則を基に具体的な事例を交えて紹介
  3. アプリをよりiOSらしくするための改善点を見つける

iOSらしいデザインを理解し、実践することで、アプリをより魅力的にしていきましょう!

採択
2024/08/23 14:30〜
Track D
スポンサーセッション(20分)
スポンサーセッション

MV State PatternでSwiftUIを受け入れる

Hiroma Tsuchiya

私たちのチームでは来たるべき超巨大アプリの開発に備え、向こう5年間は大規模なリファクタリングを必要としない堅牢な設計を目指してPoCを去年から開始しました。
PureなSwiftUIが全面的に採用され、基盤となるアプリアーキテクチャはどうするべきかという議論も重ねました。
本セッションではあまり聞き馴染みのないアーキテクチャである「MV State Pattern」について視覚的に分かりやすく解説しつつ、以下のポイントに的を絞ってお話しします。

【ポイント】
・MV State Patternとは
・なぜ採用したのか
・SwiftUIとの親和性
・実際の使用感はどうなのか

これらの知見が今後アプリアーキテクチャを考える皆さんの意思決定の一助となれば幸いです。

採択
2024/08/24 11:25〜
Track A
スポンサーセッション(20分)
スポンサーセッション

クロスプラットフォーム普及増加。SwiftでiOS開発はもうやらないのか....?

__shimisho__ 清水 翔貴

現在、Flutter、React Native、MAUI、Compose Multiplatformなど様々なクロスプラットフォームフレームワークが登場しており、業務での利用も増えているかと思います。
弊社でもFlutterを使用した案件が出てきております。

そのような中で、「Flutter等を使用してiOS・Androidを一緒に開発できるのに、Swiftで開発する必要はあるのか」という疑問を誰しも一度は抱いたことがあるかと思います。
実際、私自身も個人的なアプリ開発では、Flutterなどを使用することが増えました。

そのため、「とりあえず効率が良さそうだから」という理由だけでクロスプラットフォームを選ぶのではなく、しっかりとした理由に基づいて技術選定を行うことで、開発効率を向上させ、質の高いアプリを作れるようになると考えました。

そこで本トークでは、今一度Swiftとクロスプラットフォームでの開発を比較し、それぞれを利用する場面について考えていきたいと思います。

採択
2024/08/24 11:25〜
Track B
スポンサーセッション(20分)
スポンサーセッション

ウォンテッドリーにおけるモバイルアプリ開発

swiz_ard Masatoshi Kubode

ウォンテッドリーは、「究極の適材適所によりシゴトでココロオドル人をふやす」をミッションとして、働く人全てに関わるプロダクトを開発しています。モバイルアプリは主にWantedly Visitアプリを展開し、求職者と企業の最適なマッチングを提供するサービスを提供しています。
Wantedly Visitの開発では、技術的にはKMPを使ったモバイルプラットフォーム共通のロジックと、SwiftUIやJetpack Composeといったモダンな技術スタックで開発を行っています。
このセッションでは、普段のKMPを使った開発の進め方や、チームの話、今後の方向性などについて話す予定です。

採択
2024/08/24 11:25〜
Track C
スポンサーセッション(20分)
スポンサーセッション

新卒のiOSエンジニアが"クックパッドの今"を紹介!

71の国と地域でレシピサービスを提供している「クックパッド」は今年の3月に26周年を迎えました。

ご存じの方もいるかもしれませんが、クックパッドでは昨年さまざまな出来事がありました。そういった状況の中で今年新卒として入社したiOSエンジニアのHarutaが、クックパッドアプリ開発のリアルな現状をご紹介します。

【キーワード】 アプリ品質を保つ取り組み、デザインシステム、リリースフロー、日本と海外向けアプリの違い...

詳しい内容は当日のお楽しみに!

採択
2024/08/24 11:25〜
Track D
スポンサーセッション(20分)
スポンサーセッション

Kotlin MultiplatformでSaaS大規模アプリの生産性を向上させる技術的意思決定と導入効果を最大化するための取り組み

zeero Jiro Nagasaki

どの開発チームにとっても、開発生産性の向上は重要な課題です。Sansan株式会社では、SaaSの営業DXサービス「Sansan」を提供しています。これまで、SansanのiOSアプリとAndroidアプリは別々に開発されてきました。 今年、iOSとAndroidのビジネスロジックを共通化し、ソースコードの統一やOS間の仕様差を解消することで開発生産性を向上させるために、Kotlin Multiplatform (KMP) を導入しました。

しかし、大規模なプロダクトにKMPを導入することは、大きなインパクトを伴う変更です。本セッションでは、KMP導入に向けた技術的意思決定のプロセスやKMP導入の効果を最大化するためのノウハウを紹介します。

具体的には以下のトピックについてお話しします:

・KMP導入の目的を明確にする
・KMP導入の効果を試算する方法
・iOS/Android/KMPの全体アーキテクチャ設計と技術的意思決定のプロセス
・KMP導入にあわせた組織設計
・KMP導入で発生する課題とその解決策

KMPの導入を検討されている方、意思決定プロセスや組織設計に興味がある方、Sansanのアプリ開発事情を知りたい方は是非ご参加ください!

採択
2024/08/24 14:30〜
Track A
スポンサーセッション(20分)
スポンサーセッション

医療アプリ開発の最前線 - 安全性と生産性の両立への挑戦

shzero5 Shogo Yoshida

医療アプリの開発においては、患者の安全と利便性の向上が最重要課題となります。一方で、医療制度の変更への迅速な対応や新規機能の実装など、高い生産性も求められます。この2つの要件は相反するものですが、その両立は避けられない課題です。

本セッションでは、メドレーのオンライン診療・服薬指導アプリ「CLINICS」の開発を通じて、いかにして安全性と生産性の両立に取り組んでいるかをご紹介します。

・診療報酬改定などの制度変更に柔軟に対応できる体制
・SPMマルチモジュール、トランクベース開発など生産性向上の工夫
・MagicPodを活用した自動テスト環境での効率的な品質確保
・法律・ガイドライン・制度対応や社内他部門との連携を含む総合的なアプローチ

医療アプリの開発は技術的側面のみならず、適切な規制対応や組織間調整など様々な課題に直面します。本セッションでは、そうした課題への具体的な取り組みをご紹介しつつ、品質と速度の両立に向けた実践的な知見をお話しします。

医療×テクノロジーの最前線で得られた学びを、皆様の開発にも活かしていただければ幸いです。

採択
2024/08/24 14:30〜
Track B
スポンサーセッション(20分)
スポンサーセッション

ANDPAD黒板のオフラインモード機能 リリースまでの軌跡

kotetu 栗山 徹

2024年4月、ANDPAD黒板でオフラインモード機能の提供が開始されました。

これまで、山間部・僻地や地下といった電波の届きにくい場所での工事においては、アプリが十分に利用できない状態でした。特に、電波の届きにくい場所における工事関係の写真撮影に対するニーズは高く、この課題に対処すべく開発されたのがオフラインモード機能です。

オフラインモード機能は大きな機能のため、昨年末から2つのプロダクトチームのメンバーが協力して開発を進めてきました。開発中には様々な課題に直面し、その度にメンバー全員で知恵を振り絞って課題を解決しました。

本セッションでは、そんなANDPAD黒板のオフラインモード機能開発の経緯から、開発の詳細、開発時に遭遇した問題に対してどう解決したのかについてご紹介します。また、開発を通じて得られた iOS 開発に関する知見についてもご紹介します。

採択
2024/08/24 14:30〜
Track D
スポンサーセッション(20分)
スポンサーセッション

GraphQLとスキーマファーストで切り開くライドシェアの未来

ku 熊谷健太郎
ku

newmoは今年の1月に設立された新しい会社です。"移動で地域をカラフルに" をミッションに掲げ、利用者視点に立ったサステナブルな地域交通の実現を目指すスタートアップです。

newmoではAPIのスキーマ定義に、より多くの情報を記述する宣言的なアプリケーション開発を行っています。スキーマからコードを自動生成することで、APIの挙動が理解しやすくなると同時に、各チームが主体的・自律的に開発が進められる状態を実現します。
モバイルアプリとバックエンドAPIとの通信にはGraphQLを採用しました。ディレクティブを活用して、APIクライアントの生成に留まらない、より宣言的なアプリケーション開発を行っています。

本セッションでは、より安全に、高速にiOS開発を進めていくための弊社の取組みをご紹介します。

  • GraphQLとディレクティブの活用
  • バックエンドAPIの進捗に依存せず、主体的・自律的に開発を進めるための工夫
  • 最高のiOS開発体験を実現するための取り組み