本文へスキップ / Skip to main content
KINTO Tech Blog

Articles by Ryomm

著者一覧
  • TipKit外部から表示状態をコントロールする cover

    TipKit外部から表示状態をコントロールする

    TipKitは表示状態の管理まで内部で完結するため、既存アーキテクチャと齟齬が生じたり、移行時に全ユーザーの表示状況がリセットされたりする問題があります。my route for iOSでは@ParameterとonAppear・onChangeで状態を同期させ、ロジックをViewから切り離して外部から表示制御できるようにしました。

  • RyommRyomm
    iOSDC Japan 2025にゴールドスポンサーとして協賛しました! cover

    iOSDC Japan 2025にゴールドスポンサーとして協賛しました!

    iOSDC Japan 2025にゴールドスポンサーとして協賛した記録です。絵本のような質感を狙った冊子「アプリのひみつ アプリ内製開発ストーリー」の制作、AIファーストを掲げてVTuber風キャラクターを立てたブース企画、そして社員2名の登壇内容を紹介します。

  • [iOS] すぐできる!CIクレジット超ドケチ節約術 cover

    [iOS] すぐできる!CIクレジット超ドケチ節約術

    Bitriseの1回あたりの実行時間が25分に膨れ、予算超過でPRのマージを抑える事態になったmy route(iOS)で、CIクレジットを節約した取り組みです。CLIツールのセットアップ見直しやスナップショットテストのTestPlan分離などにより、平均22分を12分に短縮し約45%を削減しました。

  • 【SwiftUI】独自のStyleを定義してスタイリッシュなコードを書こう cover

    【SwiftUI】独自のStyleを定義してスタイリッシュなコードを書こう

    SwiftUIで独自のStyleを定義すると、用途別に乱立した構造体名を覚えなくても `~~Style()` から候補を辿れるようになり、コードが読みやすくなります。LabelStyleを例にカスタムスタイルの作り方を示し、my routeのProgressViewで背景のグレー表示までスタイルに含めた実例を紹介します。

  • RyommRyomm
    【Slack CLI】block_idが衝突してSlackにメッセージを送れない cover

    【Slack CLI】block_idが衝突してSlackにメッセージを送れない

    Slack CLIでrich_text型のデータを結合してBlock Kitのメッセージを送ろうとすると、`parameter_validation_failed`で失敗することがあります。原因はblock_idの重複でした。インタラクティブな動作が不要ならblock_idを削除すればSlack側が自動生成してくれる、という解決策を紹介します。

  • RyommRyomm
    はじめてのiOSDCスポンサー日記 cover

    はじめてのiOSDCスポンサー日記

    iOSDC Japan 2024へ初スポンサーとして出展するにあたり制作した数々のノベルティを紹介します。くもびぃ紙クリップ、シールと台紙のセット、マルチカードツール、トートバッグ、パンフレット広告、そしてプロダクトごとに問題を用意したブース企画まで、こだわりの舞台裏をお届けします。

  • RyommRyomm
    Slack虎の巻🐯 cover

    Slack虎の巻🐯

    社内LT「Slackを使いこなせ!Slack効率3000倍」の文字起こしです。クエリを使った検索、カスタムレスポンス、メンションとユーザーグループ、通知とリマインダー、ハドル、メール転送、ワークフロー、Slack CLIでのカスタムアプリまで、業務の困りごとを解消する機能を一気に紹介します。

  • UITextViewをSwiftUIで使えるようにUIViewRepresentableする cover

    UITextViewをSwiftUIで使えるようにUIViewRepresentableする

    UITextViewをSwiftUIで使うためにUIViewRepresentableで包むと、isScrollEnabledをfalseにすると改行されず、優先度を設定しても垂直方向の領域が調整されない問題に当たります。iOS16から使える`sizeThatFits()`でNSAttributedStringの高さを計算して解決した手順を紹介します。

  • [iOS] Snapshot Test のリファレンス画像を任意のディレクトリに作成する cover

    [iOS] Snapshot Test のリファレンス画像を任意のディレクトリに作成する

    スナップショットテストのファイルが増えて目的のテストを探しづらくなったため、サブディレクトリに分けました。swift-snapshot-testingの`assertSnapshots`ではリファレンス画像の作成場所を指定できないので、`verifySnapshot`に絶対パスを渡してリファレンス画像を従来の場所に保つ方法を紹介します。

  • my routeアプリにスナップショットテストを導入しました cover

    my routeアプリにスナップショットテストを導入しました

    my routeアプリ(iOS)にswift-snapshot-testingでスナップショットテストを導入した記録です。API取得後の反映を待つ、端末によるframeのズレ、WebViewやカメラ画面の扱いといったUIKitアプリ特有の試行錯誤と、Bitriseを使ったCI戦略、肉眼で判断できない差異の炙り出し方を紹介します。

  • RyommRyomm
    社内限定のLT大会を開催しました! cover

    社内限定のLT大会を開催しました!

    1on1で「ラフなLT大会をやりたい」と口にしてから約1ヶ月で、室町オフィスでの社内限定LT大会を実現した記録です。12名の登壇者が集まり、コーポレートITの協力でZoom配信も実施しました。Slackから離脱せずに楽しめる工夫と、ウェビナーのリアクション設定という反省点も共有します。