-
開発
macOSでDockerを使うときはプライバシー設定も確認する
ファイルとフォルダのアクセス権を設定する -
開発
【Python】loggingを使ってログを出力する
定期的に実行されるバッチスクリプトなどで問題が起きたときの記録や、問題が起きていなくても、実行したことを記録したいときなどには、ログを出力することが一般的です。 また、デバッグ用に特別なログを入れておき、不具合の原因を探すということもあり... -
「基礎から学ぶSwiftUI」 の iOS 14 及び Xcode 12 対応情報公開のお知らせ
「基礎から学ぶSwiftUI」はiOS 13 及び Xcode 11 に基づいて書かれています。iOS 14 及び Xcode 12 では少し変わっているところがありますので、その対応情報を公開しました。 対応情報はC&R研究所の訂正情報のページからご覧頂けます。 以下のページから... -
開発
【Python】ArgumentParserでコマンドライン引数を取得する方法
Pythonでシェルスクリプトを作ったときに、ArgumentParserクラスを使うと、簡単にコマンドライン引数を解析して取得できます。 ArgumentParserクラスは、次のような機能を持っています。 順番が決まっている必須引数の解析・取得 オプション引数(デフォル... -
開発
APFS非対応のOSでも開けるディスクイメージの作り方
macOS High Sierra 10.13からファイルシステムがAPFSに変わりました。それにより、ディスクユーティリティが作成するディスクイメージファイルのファイルシステムもAPFSになっています。 そのため、macOS 10.13未満のOSで開こうとすると開けなくなってしま... -
開発
Finderと同じ方式のZipファイルをターミナルやシェルスクリプトで作る
macOSのFinderにはファイルやフォルダを圧縮してZipファイルを作る機能が入っています。このZipファイルはWindows上で作成するZipファイルとは少し異なります。 このFinderで作られるZipファイルと同じ方式のZipファイルはターミナルからも作成できます。... -
開発
インストーラのNotarization Service対応
インストーラ形式で配布しているアプリでは、アプリ本体のNotarization対応の他に、インストーラもNotarizationに対応する必要があります。 この記事では、macOSのインストーラのNotarization対応について解説します。 【インストーラの作り方のあらまし】... -
開発
Combine入門 | Combineを使ってネットワーク接続する方法
この記事では、Combineを使ってネットワークアクセスする方法を解説します。 Combineが初めての方やCombineの他の例については、次の記事もご覧ください。 [clink url="https://www.rk-k.com/archives/3937"] DataTaskを実行するPublisherを作る Combineを... -
開発
Combine入門 | 独自のタイプをCombine対応にする
Combineはアップル純正の非同期処理を実装するためのフレームワークです。SwiftUIのバインディングなどでも使われています。少し分かりにくいのですが、重要なフレームワークです。 Combineが初めての方は、次の記事もご覧ください。 [clink url="https://... -
開発
Apple Notarization Service に対応するためのXcodeの設定
Apple Notarization Service に対応させて、アプリの公証を受けるためには、いくつかの方法があります。 この記事では、複雑なケースも含めて、公証を受けるためのXcodeのプロジェクトの設定方法を解説します。 公証が始まる前にリリースしたアプリについ... -
開発
Combine入門 | CombineでTimer処理を行う方法
TimerもCombineに対応しています。Timerで定期的に実行される処理をCombineを使って設定出来るようになっています。 この記事ではTimerの処理をCombineで行う方法についてです。 Combineが初めての方は、次の記事もご覧ください。 [clink url="https://www... -
開発
Combine入門 | CombineでNotificationを受け取る方法
Combineはアップル純正の非同期処理を実装するためのフレームワークです。SwiftUIのバインディングなどでも使われています。重要なフレームワークです。 【動作環境】 Combineは次のような環境で動作します。 サポートしているOS Combineがサポートしてい... -
開発
HTTPのステータスコードへの対応
Webサーバーと通信するクライアントアプリのエラー処理で必ず必要になるのがHTTPのステータスコードです。 色々なコードが定義されていますが、これだけ知っていれば、とりあえずは大丈夫だと思われるものをまとめました。 通信成功 通信が成功したときは2... -
開発
Nginxで帯域制限を行う方法
作っているアプリからHTTPに接続するときに、ネットワークの速度を制限したいことがあります。例えば、とても遅いネットワークや海外のインフラが整備されていない地域から接続されるときに、正しく動くかを確認したいときなどです。 WebサーバーをNginxで... -
開発
OpenCVのセットアップ方法 (macOSアプリ用)
OpenCVはオープンソースの画像処理やマシンラーニングを行うためのライブラリです。多くの機能を持っており、画像処理やマシンラーニングの処理を一から全て実装するよりも効率的に開発出来ます。 高機能なだけではなく、非常に高速です。内部ではOpenCLや... -
開発
OpenCVのセットアップ方法(iOSアプリ用)
OpenCVはオープンソースの画像処理やマシンラーニングを行うためのライブラリです。高機能なライブラリで、画像処理やマシンラーニングの処理を一から全て実装するよりも効率的にアプリ開発を行えます。 高機能なだけではなく、非常に高速です。内部ではOp... -
開発
Parallels Desktopで古いmacOSゲストをセットアップする
この記事で使用しているParallels DesktopのバージョンはParallels Desktop 15です。 昔からずっと使われている製品では、動作対象のOSが極端に古い場合があります。 そのような製品の動作確認にはParallels Desktopを使うと便利です。かなり古いOSでも仮... -
開発
HomebrewをWindows上で使えるようにする
Homebrewは元々はMac用のパッケージマネージャーです。そのHomebrewがv2.0からLinuxを正式サポートしました。同時にWSL(Windows Subystem for Linux)も正式にサポートしました。 この記事では、WSL上でHomebrewをセットアップする方法を解説します。 【記... -
開発
WSL (Windows Subsystem for Linux) のセットアップ方法
2019年2月2日にリリースされたHomebrew v2.0から、公式サポート環境にWindows 10(WSL)とLinuxが加わりました。 この記事では、Homebrewで必要になるWSLのセットアップ方法を解説します。 【Windows 10でのWSLのインストール】 次の手順でインストールしま... -
開発
macOS Big Sur 11以降でドライバ(KEXT)の許可を取り消す方法
macOSではドライバ(KEXT)は、ユーザーが許可しないとロードされません。ドライバと通信するアプリを開発中のときなど、ユーザーが許可していない状況や、ドライバをインストールする前の状態を作り出したいときがあります。 この記事ではそのようなとき...