August 30, 2021

Kotlin/Nativeで生成したLinux向けバイナリをDockerで実行する

Kotlin/Nativeは現在 Android NDK(androidNativeArm32, androidNativeArm64) Darwin macOS(macosX64, macosArm64) iOS(iosArm32, iosArm64, iosX64, iosSimulatorArm64) watchOS(watchosArm32, watchosArm64, watchosX86, watchosX64, watchosSimulatorArm64) tvOS(tvosArm64, tvosX64, tvosSimulatorArm64) Linux(linuxArm64, linuxArm32Hfp, linuxMips32, linuxMipsel32, linuxX64) Windows(mingwX64, mingwX86) wasm(将来deprecated) のプラットフォームに対応しています。 1.5.30からApple siliconの正式サポートもされました🎉 Read more

April 30, 2021

DartのStreamでRxのBehavior Subjectを再現する

Dartには標準ライブラリのasyncパッケージにStream クラスが含まれています。 これはこれでとても便利なのですが、Androidで長く使っていたせいで非同期処理の操作がRx脳になっているので、時々こういうのはRxではできるのになーって思うことが多々あります。 Rxで個人的に一番好きなクラスはBehaviorSubjectでStreamの最後の値をキャッシュしておいて、Subscribe(Listen)と同時に最後の値をemitしてくれるものです。 オペレータだとdistinctUntilChangedかscanかwithLatestFron(combine)です。 Read more

March 31, 2021

FlutterのLifecycle(onResume, onPause)を検知する

FlutterはUIを構成するものはすべてWidgetでできています。そのため、AndroidにあるActivityやiOSにあるViewControllerのような画面の概念は厳密にはありません。 FlutterではNavigatorがページのような概念を持ったRoute(参考) のスタックを管理することで画面遷移を実現しています。 今回は NatigatorObserver と WidgetsBindingObserver を使ってアプリのライフサイクルイベントを検知します。 Read more

January 31, 2021

GASを使ってGmailにきた予定をGoogle Calendarに自動で登録する

最近は在宅勤務なのでミーティングの時間となるべく被らないように 宅配便の配達時間指定をすることが多いのですが、せっかく時間指定しても忘れていてミーティングが被ることがあります。 他にも予約したお店とかの情報が勝手にGoogleカレンダーに追加されたら嬉しいなって思うことが多かったので、Gmailにきたメールをパースしてカレンダーに追加する方法を紹介したいと思います。 Read more

December 22, 2020

Kotlin Multiplatform 対応したRealmを使ってみた

この記事はKotlin Advent Calendar 2020 の22日目の記事です。 Kotlin Advent Calendarに参加するのは今年で6年連続6回目になりました🎉🐦 毎年22日近辺を書いています。マイルストーンの時から書いている記事もあるので情報が古くなっているものもありますが、 過去にはこんな記事を書いていました。 Read more

November 30, 2020

SwitchBotでマンションのオートロックをキーレスにする

お家IoTが好きで家電はほぼ全て自動化されています。 最近はSwithchBotからもカーテンの自動開閉機がでたので導入してます。(自分は発売前にmakuakeで支援があったのでしてみました) 朝だけじゃなくて夕方暗くなってきた時に「OK, Google. 夜だよ」って言うと電気つけてカーテンを締めてくれるので結構快適です。 Read more

© AAkira 2023