iOSDC Japanの公式アカウントです。2026年は9/11~9/13 オフライン オンライン開催。 ハッシュタグ: #iosdc
Skipは、1つのSwiftコードベースからiOSおよびAndroidの両方に向けてトランスパイルできるツールです。今回、「タスク管理アプリ『MIT』」をSkipを用いて開発し、iOSとAndroid向けにリリースしました。 実際の開発・運用の過程で、Skipのトランスパイルだけでは乗り越えられない壁に何度も直面しました。本トークでは、その壁を以下の2つのカテゴリーに分類して整理します。 1....
ちょっとした動画を作りたいだけなのに、動画編集アプリを開いてトリミングやトランジションを一つひとつ調整するのは大変です。 そこで「写真や動画を入れるだけで、いい感じの Vlog がサクッと作れる」アプリが欲しくて、ClipCraft というアプリを個人開発しました。 ClipCraft は写真や動画をインポートするだけで、1クリップを固定秒数で統一した動画を自動生成するアプリです。...
SwiftのみでインタラクティブなAIエージェントアプリを作ろうと思うと、様々な言語機能やフレームワークを活用する必要があり、その1つ1つを説明していきたいです。デモアプリを用意して実際のUXとコードを往復し、どの技術がどのようなことを実現しているかをわかりやすく話していきたいです。具体的に話したいこととして、 ・エージェントとのイベントを通信するためのAsyncStream ・エージェント...
人間のかわりにコンピューターが作曲する、いわゆる「自動作曲」。 Foundation Models が登場した今、かつては夢物語だった「あなたのiPhoneが端末上で自動作曲を行う光景」はすでにそこにあります。 iOS上における自動作曲に関しては、過去に2023年度のiOSDC Japanにおいて「iOSは自動作曲の夢を見るか? 〜オンデバイス音楽生成の可能性」というセッションで語られた通り...
みなさんは、アニメやゲーム、映画を見ながら「自分もこんな体験をしてみたい」と思ったことはないでしょうか? もちろん現実世界でその体験を再現することは簡単ではありません。しかし、Apple Vision Proのような空間コンピューティングデバイスの登場によって、私たちエンジニアが自ら実装し、その憧れに近づくための手段も増えてきました。 今回私は、アニメで見たカードバトル体験をApple...
多くのiOSアプリは、アプリ内あるいはサーバーサイドでデータベースを使っている。 そんな馴染み深いデータベースだが、その内部実装を知っている人は案外少ないのではないだろうか? 私自身も、中身を知らずにデータベースを使っていた一人であった。 この課題を解消すべく、私はSQLiteライクなデータベースをSwiftで自作することで、その内部実装の理解を目指してきた[1]。 本発表では、私の経験をも...
今やほとんどのiOS開発者は、Swift Concurrencyを日常的に使っているだろう。 その一方で、「なぜasync関数は中断・再開できるのか?」と聞かれて、その仕組みを答えられる人は少ないのではないだろうか。 この「Swift Concurrencyがブラックボックス化している」という課題を解消すべく、私はSwiftのソースコードからSwift Concurrencyの仕組みを解読し...
MCP(Model Context Protocol)は、LLMに外部のツールやデータソースを接続するための共通プロトコルとして広がっています。一方、iOS 26のFoundation Modelsフレームワークには独自の tool calling があります。この2つを繋いだら、iPhoneのオンデバイスLLMが、MCPサーバーの提供するツール群をそのまま呼べるのではないか——というのが出...
iOS 26のFoundation Modelsフレームワークには tool calling があります。モデルに「ツール」を渡しておくと、生成の途中でアプリ側の処理を呼び出してくれる仕組みです。App Intentsと組み合わせれば、オンデバイスのAIが端末の操作を“自分で”実行できます。 便利な一方で、その操作が課金や送信のような取り消しにくい行為だったら——AIの判断にそのまま任せてい...
iOS 26で登場したFoundation Modelsフレームワークは、iOS 27で大きく変わります。LanguageModel / LanguageModelExecutor という公開プロトコルが追加され、Apple純正のオンデバイスモデルだけでなく、任意のLLM——クラウドのモデルすら——を「純正と同じAPI」の裏側に差し込めるようになりました。 このトークでは、その新APIを使っ...
概要 ChatGPTの登場によって、iOSアプリ開発の進め方は大きく変わりつつあります。 Apple公式ドキュメントの読み解き、新しいAPIのキャッチアップ、サンプルコードの作成、エラー調査、リファクタリングの相談まで、これまで検索エンジンや試行錯誤に費やしていた時間を大幅に短縮できるようになりました。 例えば、「StoreKit 2で年間プランの購入処理を実装したい」と質問すると、必要なA...
ライブ配信では、サーバー側で映像を受け取りHLSへ変換して配信する構成が一般的です。一方で、個人開発のiOSアプリでこの構成をそのまま採用すると、変換処理のために常時動かすサーバーや配信量に応じた費用が重くなります。 このトークでは、撮影中のiPhone端末内でHLS用の `init.mp4` と `.m4s` セグメントを生成し、静的配信基盤へ直接アップロードすることで、専用の映像変換サー...
高齢者向けの見守りアプリでは、一般的なアプリ開発で前提になりがちな「ユーザーが毎日アプリを開く」という行動を期待できません。一方で、見守りサービスとしては、日々の状態をなるべく確実に把握し、家族などの見守る側に必要な情報を届ける必要があります。 本トークでは、実際に開発・リリースした高齢者見守りアプリを題材に、iOSのWidgetを活用して「アプリを開かれない前提」の体験をどのように設計した...