開発
技術系の記事はDevelopersIOで執筆することにした。一方、すぐに修正されそうなトピックやワークアラウンド的な内容は記事の寿命が短くなる可能性があるため、引き続き「酢ろぐ!」で書くことにしている。 毎月の終わりには、DevelopersIOで執筆した記事への…
技術系の記事はDevelopersIOで執筆することにした。一方、すぐに修正されそうなトピックやワークアラウンド的な内容は記事の寿命が短くなる可能性があるため、引き続き「酢ろぐ!」で書くことにしている。 毎月の終わりには、DevelopersIOで執筆した記事への…
技術系の記事はDevelopersIOで執筆することにした。理由は、技術記事の信頼性や検索性を高めるためである。一方、すぐに修正されそうなトピックやワークアラウンド的な内容は、記事の寿命が短くなる可能性があるため、引き続き「酢ろぐ!」で書くことにして…
技術系の記事はDevelopersIOで執筆することにした。一方、すぐに修正されそうなトピックやワークアラウンド的な内容は記事の寿命が短くなる可能性があるため、引き続き「酢ろぐ!」で書くことにしている。 毎月の終わりには、DevelopersIOで執筆した記事への…
技術系の記事はDevelopersIOで執筆することにした。一方、すぐに修正されそうなトピックやワークアラウンド的な内容は記事の寿命が短くなる可能性があるため、引き続き「酢ろぐ!」で書くことにしている。 毎月の終わりには、DevelopersIOで執筆した記事への…
技術系の記事はDevelopersIOで執筆することにした。一方、すぐに修正されそうなトピックやワークアラウンド的な内容は記事の寿命が短くなる可能性があるため、引き続き「酢ろぐ!」で書くことにした。 毎月の終わりには、DevelopersIOで執筆した記事へのリン…
技術系の記事はDevelopersIOで執筆することにした。一方、すぐに修正されそうなトピックやワークアラウンド的な内容は記事の寿命が短くなる可能性があるため、引き続き「酢ろぐ!」で書くことにした。 毎月の終わりには、DevelopersIOで執筆した記事へのリン…
多言語対応アプリの開発は非常に大変だ。特に、アプリ内で使用される各種テキストを管理する「文字列リソース」の取り扱いについては、更新や検証に多大な労力を要する。この課題を解決するために、csv2strings というスクリプトを公開した。 csv2strings は…
アプリ開発界隈で、課金管理をスムーズに行うために多くの開発者が利用する「RevenueCat」だが、導入する際に「The receipt is not valid.(レシートが無効です)」というエラーが発生する。 これは大抵の場合、「アプリ固有の共有シークレット」が間違って…
2023年10月7日の activesupport のアップデートによって CocoaPods が使えなくなった。すぐに修正されると思うが、直近で困ってる方のために備忘録を残す。 bundler: failed to load command: pod エラーが発生する bundle update のあと、 bundle exec pod …
MacBook Air (11-inch, Mid 2011)でリカバリができなくなってしまった。 内部ストレージとインターネットの両方で再インストールが失敗。MacBook Pro (2021)を使用してMac OS X El CapitanのUSBインストーラーを作成することにした。 本当はMBAの初期OSであ…
さくさんは Assets.xcassets や Colors.xcassets にアクセスするために R.swift を愛用している。Xcode 15.0 アップデート後、R.swift の ColorResource や ImageResource の extension でエラーが発生するようになった。 R.swift の ColorResource や Image…
Xcode 15.0へのアップデート後、CocoaPods経由でインストールしたFirebase Apple SDKでコンパイルエラーが発生する。 解決方法 CocoaPods 1.13.0 のリリースされると、この問題は解消される見込みである。ただし v1.13.0がリリースされるまでの間は、ワーク…
大量にある SVGファイルを PNGファイルへ変換したい。 大量にある SVGファイルの例(例:国旗アイコン) 本記事では、rsvg-convert コマンドを使って、指定したディレクトリ内のSVGファイルをPNGファイルに変換する方法を以下に説明する。 rsvg-convert のイ…
家庭内サーバーマシンをリプレイスした。いままで使っていた Mac mini (Late 2014) が不要になったため、Mist を使って USBインストーラーを作成して初期化した。 あらすじ 今年の3月に「ThinkCentre M715q Tiny」を譲ってもらった*1。しかし、デスクトップ…
長いあいだ、Swift でのデータ操作が煩雑な Cloud Firestore を使う気になれなかったのだが、いつのまにか Swift Concurrency に対応していた。async / await が使えると話が変わってくる。格段に使いやすくなっていたので、お試しで簡単なアプリを作ってみ…
たとえば画像識別アプリを開発中には、テスト画像を Bundle からロードして、画像を識別してその結果を評価するユニットテストを作成する。または、HTMLをスクレイピングするアプリを開発中には、ダミーのHTMLを Bundle からロードして、スクレイピング処理…
自宅サーバーでは毎日メールを送信するバッチを処理している。これまではmacOS上のJenkinsで動かしていたため、Swiftで実装したプログラムを使用していたが、JenkinsをWindowsマシンへ移行することに伴い、Pythonへ移植することにした。 本記事では、Python…
本文はあとで書く。 developer.apple.com dismissSearch() を実行すれば、検索モードがオフになり、検索バーに入力していたテキストもキーボードも消える。 Sets isSearching to false. Clears any text from the search field. Removes focus from the sear…
Python を使って、画像を添付したステータス「Hello, Misskey!」を misskey.io へ投稿する方法を紹介する。 Mastodon.py のインストール Python で Misskey にメッセージを投稿するには Misskey.py というパッケージを使用する。Python から Misskey API に…
Python を使って、画像を添付したステータス「Hello, Bluesky!」を Bluesky へ投稿する方法を紹介する。 atproto のインストール Python で Bluesky にメッセージを投稿するには atproto というパッケージを使用する。Python から Bluesky (AT Protocol) に…
Python を使って、Bluesky に「Hello, Bluesky!」と投稿する方法を紹介する。 atproto のインストール Python で Bluesky にメッセージを投稿するには atproto というパッケージを使用する。Python から Bluesky (AT Protocol) に簡単にアクセスするためのツ…
iOSアプリで「H₂O」や「x²」のような上付き文字や下付き文字を表示する方法について調査する機会があった。 さくさんは、2010年頃(iPhone OS 3.xの時代)からiOSアプリの開発を行っているが、上付き文字や下付き文字を扱うのは今回が初めてだった。他の多く…
Firebase Authentication を使った Flutter アプリを開発している。ログインプロバイダーが増減したときのイベントを取得したい。 たとえば、ユーザーアカウントに Apple アカウントが接続されている時には「Appleアカウントと連携中!」と表示し、接続解除…
Python を使って、misskey.io に「Hello, Misskey!」と投稿する方法を紹介する。 Mastodon.py のインストール Python で Misskey にメッセージを投稿するには Misskey.py というパッケージを使用する。Python から Misskey API に簡単にアクセスするためのツ…
Python を使って、画像を添付したステータス「Hello, Mastodon!」を Mastodon へ投稿する方法を紹介する。 Mastodon.py のインストール Python で Mastodon にメッセージを投稿するには Mastodon.py というパッケージを使用する。Python から Mastodon API …
Python を使って、Mastodonに「Hello, Mastodon!」と投稿する方法を紹介する。 Mastodon.py のインストール Python で Mastodon にメッセージを投稿するには Mastodon.py というパッケージを使用する。Python から Mastodon API に簡単にアクセスするための…
Python で指定したディレクトリに含まれる画像が破損している場合に当該の画像ファイルを削除する方法を紹介する。 はじめに Google Colab での TensorFlow を使った転移学習時に以下のエラーが発生した。 /usr/local/lib/python3.9/dist-packages/tensorflo…
Google Colaboratory (以下Colabと記す) に Google Drive をマウントし、大きい .tar ファイルを解凍して Google Drive に保存した。解凍をした Colab ランタイム側ではファイルが確認できるが、別のランタイムからは解凍したファイルが見られないという問題…
CloudFront + S3 で https://ch3cooh.net/ をホストしている。このサイトでは単に welcome! としか表示しない。特に何をやっているわけではなく、AdMob で規定されている 「アプリ向けの認定販売者宣言システム(app-ads.txt)」置き場である。そのためでき…