Akira Hayashi (林 晃)– Author –
Akira Hayashi (林 晃)
Representative(代表), Software Engineer(ソフトウェアエンジニア)
アールケー開発代表。Appleプラットフォーム向けの開発を専門としているソフトウェアエンジニア。ソフトウェアの受託開発、技術書執筆、技術指導・セミナー講師。note, Medium, LinkedIn
-
Representative of RK Kaihatsu. Software Engineer Specializing in Development for the Apple Platform. Specializing in contract software development, technical writing, and serving as a tech workshop lecturer. note, Medium, LinkedIn
-
お知らせ
テックブログについて
テックブログですが、本サイトに再統合することになりました。 ここのところ、こちらのブログの更新が少ないのですが、理由はテックブログに力を入れています。 以前、別ブログとして立ち上げた「現役のプログラマーが書く プログラミング情報」というブ... -
開発
ビルド設定ファイルを使ってXcodeのコードサイニングを設定する
iOSアプリのプロジェクトファイルを、オープンソースやサンプルコードなどとして配布する予定のときには、コードサイニングの設定をプロジェクトファイルに設定したくないことがあります。しかし、ローカルで作業中はコードサイニングの設定を行わないと、... -
開発
Gitから変更されたファイルだけ取り出す方法
Gitはファイルの履歴を管理しています。この機能のおかげで同じリポジトリを参照する人は、別の人が行った変更を取り込むことができます。 変更内容を別の人に渡したいときに、リポジトリに直接アクセスできる人はGitの機能を使ってもらえば良いのですが、... -
開発
ビルド設定ファイルでXcodeの検索パスを変更する
開発しているアプリによっては、自身で管理していないSDKなどの使用が必要となることがあります。SDKのインストールパスは大体同じ場合が多いと思いますが、任意の場所にインストール可能な場合、マシンや開発者によってインストール先が異なる場合もあり... -
開発
Wordでしおり(目次)を持ったPDFを作る方法
最近のバージョンのWordにはPDF出力機能が入っていて、簡単にPDFを作れます。資料を作成したアプリを持っていない人でも、PDFにして渡せば開いたり印刷することができるため非常に便利です。 PDFを出力するときに一工夫すると、Adobe Acrobat Readerのしお... -
開発
Xcodeでプロジェクト間共通のマクロを定義する
SDKなどの複数のライブラリやプログラムで構成されるモジュールを開発しているときなど、複数のプロジェクト間で共通のマクロ定義を参照することがあります。 たとえば、ある特定の機器と通信するSDKを開発しているときに、対象となる機器によって定数を切... -
開発
Xcodeの設定ファイルの作成方法
Xcodeで設定するビルド設定はプロジェクトファイル(*.xcodeproj)に保存されます。通常のアプリ開発ではこれだけで十分なのですが、中規模以上の開発を行っているときや特殊なプログラムを作っているときなどは、もう少し柔軟に制御したいことがあります... -
開発
Xcodeの証明書などのバックアップ
iOSアプリなどのApple Platform向けの開発をしていると、Apple Developer Programで発行された電子証明書など、コードサイニングに必要な情報がマシンに保存されています。私の場合は、これらの証明書をバックアップしておいて、Macを初期化したときや別の... -
開発
SwiftUIで使うウインドウをAppKitで作る
macOS Monterey 12.4 + Xcode 13.4.1時点では、ウインドウ生成に関する処理をSwiftUIで作ろうとすると、WindowGroupとDocumentGroupしか選択肢がなく、シングルウインドウアプリは作れません。また、メニューバーをすべてアプリ側で定義することもできませ... -
開発
SwiftUIでウインドウサイズを設定する方法
SwiftUIを用いてmacOSアプリを開発する際、ウインドウサイズの初期値、最大値、最小値の設定方法を本記事で解説します。 【WindowGroupを使っているとき】 WindowGroupを使っているコードでウインドウを定義するコードが次のようになっているとします。 im... -
開発
SwiftUIでウインドウを閉じたときにアプリを終了する方法
SwiftUIで開発されたmacOSアプリで、ウインドウが閉じられた時点でアプリを終了する方法を本記事では解説します。 【WindowGroupを使っているとき】 プロジェクト作成時に、InterfaceにSwiftUIを指定すると、ウインドウを作成するコードは次のようになって... -
開発
SwiftUIでのタブの作り方
SwiftUIでタブを作るにはTabViewを使用します。本記事ではSwiftUIでのタブの作り方を解説します。 【基本的な構造】 TabViewは次のような構造で使用します。 struct ContentView: View { var body: some View { TabView { // --- ここから --- // タブ内に... -
開発
【SwiftUI】環境設定ウインドウの変換タブのレイアウト調整
MultiTextConverterをSwiftで再実装してみるという試みを行っています。今回は環境設定ウインドウのGUI作成の続きで、変換タブのレイアウト調整です。 経緯はこちらの記事をご覧ください。 【調整内容の確認】 前回の記事で環境設定ウインドウの変換タブを... -
開発
【SwiftUI】環境設定ウインドウのタブを作る
MultiTextConverterをSwiftで再実装してみるという試みを行っています。今回は環境設定ウインドウの見た目の作成です。 経緯はこちらの記事をご覧ください。 【MultiTextConverter 3.6のウインドウ】 MultiTextConverter 3.6では、MultiTextConverterメニ... -
開発
MultiTextConverterのSwift版の開発に興味が湧く
筆者が以前、開発して、フリーウェアとして公開しているMultiTextConverterというmacOSアプリがあります。主要な機能はテキストファイルのテキストエンコーディングの変換と改行文字の変換です。 アールケー開発のWebサイトで公開しています。 最初のバー... -
開発
GitLab CIとxcprettyのロケールエラー解消の手順
GitLabのCIによるXCTest実行中に、特定のエラーによりジョブが失敗する事象が確認されています。 /Library/Ruby/Gems/2.6.0/gems/xcpretty-0.3.0/lib/xcpretty/parser.rb:434:in `===': invalid byte sequence in US-ASCII (ArgumentError) from /Libr... -
開発
GitLab CIが実行するXCTestのテスト環境を指定する
GitLabのCIにXCTestを利用した、テストを設定する際、テスト環境を明示的に指定する必要があります。 テスト対象がmacOSアプリで、Runnerを実行しているマシンがApple Silicon Macである場合には、2つの選択肢があります。ネイティブで実行するのか、それ... -
開発
Marked2を使ってMarkdownからPDFを作る
Gitで管理するドキュメントは、WordやExcelよりもMarkdownで書くことで保守性が高まり、更新作業も容易になります。 しかし、Markdownで作成したドキュメントは、GitLabなどのMarkdownをレンダリングしてくれるサイトでは適切に表示されますが、外部配布向... -
開発
GitLab CIを活用したXCTestの自動化方法
GitLabにはCI(Continuous Integration: 継続的インテグレーション)機能があります。GitLabのCIを使えば、CI専用の別ソリューションを導入せずに、継続的インテグレーションを行えます。 この記事では、コードをGitLabにプッシュした際に、XCTestを起動し... -
開発
[2024/03/06 更新] Xcodeが対応しているSwiftのバージョン
アプリの動作環境や、対応OSバージョンに制限があるライブラリ(フレームワーク)等の要件から、時には古いバージョンのXcodeを使用せざるを得ない状況も生じます。 そうした旧バージョンのXcodeを利用する際、どのSwiftの言語バージョンに対応しているの...