【iOSDC Japan 2023 レポート】「iOSのKeyboard Extensionで日本語入力できるキーボードアプリを作ろう!」を聞いてきた。

2023.09.05

はじめに

年に一度のiOSエンジニアの為のお祭り iOSDC Japan 2023に参加しています。

せっかくなので、参加したセッションのレポートを書きたいと思います。

iOSのKeyboard Extensionで日本語入力できるキーボードアプリを作ろう!

登壇者

概要

iOSのKeyboard Extensionは、ソフトウェアキーボードを独自に開発し、配布できる機能です。

キーボードを自作する上で大きな問題が日本語入力です。標準のAPIはないので、自力でどうにかする必要があります。

私はキーボードアプリ「azooKey」をiOSでリリースし、2年以上にわたって開発・運用を続けてきました。azooKeyでは日本語入力機能をSwiftで独自に実装しています。

さらに、「学習」「ユーザ辞書」「ライブ変換」「着せ替え」「キーのカスタマイズ」など、さまざまな便利な機能を実装し、多くの利用者に実用してもらえるレベルのアプリに仕上げています。

本トークでは、このazooKeyの開発・運用の経験から、日本語入力の仕組みやSwiftによる実装、さらにキーボードアプリにして配布する方法までを解説します。皆さんも日本語入力できるキーボードアプリを作ってみませんか!?

引用: fortee

資料

感想

個人でazookeyというキーボードアプリを開発されており、今回はその知見を共有していただけました。

日本語入力アプリを作るには、日本語入力エンジンを作成する必要があり、その作り方の説明が今回の主な内容でした。

日本語入力の方法としては、

  • かな漢字変換
  • Simple Kana to Kanji conversion programe
  • 漢字直接入力

今回は、かな漢字変換を取り上げての説明でした。膨大な候補の中から頻出単語や適した単語を表示させる為に単語の優先度を上げる話はとても面白かったです。

漢字変換のアルゴリズムについては、普段あまり触れない部分で聞いていて面白かったです。

実際に、日本語エンジンを作成する為のサンプルプロジェクトも用意されていました。

それとは別に実用化のための実装を実施済みのSwift Package AzooKeyKanakanjiConverterも公開しており、今すぐにも試せる状態になっています。

セッション参加中には、次に作りたいもののアイデアが思いつき、脳汁が沢山出ていました。そんなとてもワクワクするようなセッションで非常に勉強になり、楽しかったです。

AzooKeyKanakanjiConverterを用いて、今度何か作らせていただきます。

おわりに

App Extensionには夢がある

iOSDC 2023 レポート関連

Day0

Day1

Day2