クラスベースのオブジェクト指向プログラミング言語(C++ とか)ではクラスを継承して少し動作の異なるクラスを定義することができます。CSS でも直接的ではないですが似たようなことができます。

Read the rest of this entry

自鯖の設定をちょこちょこ変えていたら、バックアップが1年半取れていないことに気づきました。正確には自鯖上で取ったバックアップファイルを家鯖に持ってくる cron job が動いていませんでした。

Read the rest of this entry

発行された証明書一覧はWebで取得できる(※ Let’s Encrypt に限らない)ので、証明書を発行するとすぐにスパマーがアクセスしに来る、という話は以前から聞いていたのですが、さすがにこんなにすぐ来るとは思いませんでしたね。

Apache httpd をフォアグラウンド実行するには -DFOREGROUND オプションを付けます。しかし、Debian/Ubuntu のパッケージに入っている設定ファイルそのままだとこれだけではうまく動きません。

Read the rest of this entry

MediaWiki という、Wikipedia を動かしている Wiki システムがあります。一方、人気のある Linux ディストリビューションの1つ(2つ)として Debian と Ubuntu があります。これらは3つとも、おおむね2年ごとに LTS リリースが出るのですが、サポートサイクルをよく見ると興味深い関係があります。

Read the rest of this entry

先ほど Play ストアにアップロードしました。数時間後には公開されるはずです。

新機能
  • 周波数を変更するボタンを長押しして周波数を連続的に変化させることができるようになりました。
いろいろ
  • アプリを離れた時に再生を停止しないようにしました。アプリがシステムに終了させられた時は再生が停止します。

バックグラウンド再生時の注意点とかよくわかんないので、長らくアプリのメイン画面を離れたら音は止めていたんですが、いろいろ調べたところ大体大丈夫そうだったので止めないようにしました。

先ほど Play ストアにアップロードしました。数時間後には公開されるはずです。

機能追加
  • アプリを開いた時に波形や周波数の設定を復元するようにしました。
いろいろ
  • 小数点としてコンマを使うロケールにおいて、周波数の表示や編集において挙動に一貫性が無かったのに対処しました。このようなロケールであっても常に小数点としてピリオドを使うようにしました。

EditText の小数点の挙動の問題ですが、そもそもアプリのメッセージの言語が英語(と日本語)だけなので、小数点だけコンマ使ってもしょうがないかと思ってピリオド固定にしました。

Android のテキスト入力ウイジェットは EditText で、入力できる内容に任意文字列とか数値だけとか指定できます。数値の場合は小数を許すかどうかと負の数を許すかどうかを指定できますが、小数を許す場合はロケールによらず小数点としてピリオドを使います。世界には小数点としてコンマを使うロケールがありますが、そういったロケールでもピリオドを使います。ただし、EditText 自体の挙動として、setText した文字列が制約違反するものであってもそのまま設定できるようです。

この挙動はずっと前からそうで、実際報告されているようですが、今でもそうです。もっともこの挙動を変更すると世の中のアプリが盛大に壊れるので「修正」するわけにもいきません。だったらコンマを使うようなオプションを新設すればいいように思えますが、それもやっていないようです。必要なら EditText としては任意文字列を受け取るようにした上で自前でバリデーションする TextWatcher オブジェクトを書いて addTextChangedListener で設定する必要があります。

先ほど Play ストアにアップロードしました。数時間後には公開されるはずです。

機能追加
  • 意図せず削除されてしまったダークモードサポートを追加(復活)した。
  • アプリ内に更新履歴を追加した。

やってることは 電卓 1.2.0 と同じです。

その2の続き

元の状態では Eclipse ADT のプロジェクトでしたが、とっくになくなって Android Studio になっているので、こっちに移行します。

Read the rest of this entry