feed
2021年07月19日, 編集履歴

Silver Baton ver. 1.4をリリースしました。手元のトラックパッド/マウス操作でMusic.appを操作できるパネルを表示するmacOS用アプリです。
前回からの主な変更点は、
です。
環境設定ウィンドウに、アプリが必要とする権限の確認、およびその取得を誘導するビューを追加しました。

また、アプリ起動時に環境設定ウィンドウを表示するようにし、その動作を抑制できる設定を追加しました。これは、権限の取得やパネル表示方法の選択など、Silver Batonの初期導入をスムーズに行えるようにすることを狙っています。

環境設定ウィンドウの改修にあたり一部SwiftUIを採用しました。環境設定ウィンドウにある3つのビューがそれぞれSwiftUIで作られています。ガワとなるウィンドウおよびNSTabViewControllerは既存のStoryboardを使い、各ビューだけをSwiftUIに置き換えた形となります。
今後はmacOSアプリもSwiftUIが主流になっていくと思われ、その練習がてらとして使ってみました。
2021年03月24日, 編集履歴
Silver Baton v1.3.1をリリースしました。手元のトラックパッド/マウス操作でMusic.appを操作できるパネルを表示するmacOS用アプリです。
前回からの主な変更点は、
- 外観モードをライト/ダーク/システム(自動)から選択できるようにした
- 2本指スワイプ上下やマウススクロール上下で音量を調整できるようにした
です。
2点目の音量調節機能は、手元のトラックパッドでSilver Batonのパネルを呼び出してすぐさま音量調節できるので、自分でもよく使う良いのができたと思います。
あと、v1.0からあったのに言ってなかった機能として、パネル表示中にキーボードショートカットが使えます。
こちらもあわせてご活用ください。
Mac App Storeへのレビュー投稿機能やアプリ内課金も追加したのでどんどんやっちゃってください(購入しなくても全機能使えます)。
2021年03月09日, 編集履歴
macOSアプリのプライバシー設定をリセットしたい時はtccutil
コマンドを使う。
macOSアプリが連絡先やカレンダー情報等、カメラ等の使用、そしてアクセシビリティ機能の使用や他のアプリの操作をしようとする際には、対応するプライバシー設定で許諾を得る必要がある。たいていは、それらの機能の初回使用時に許諾を促すダイアログを出すようにしているはずである。
ここで問題になるのは、許諾を促すダイアログは通常一度しか表示されないということである。許諾を得られていれば問題ないが、一度拒否された場合は再度アプリ側が要求しても表示されない。以降はシステム環境設定の「セキュリティとプライバシー」設定から手動操作をする必要がある。したがって、一度拒否された後は自前でダイアログ等を表示して、手動での許諾操作を促してやらなければならない。
アプリの開発側としては、最初の許諾が得られた後の挙動はもちろん、拒否された場合の挙動も確認する必要がある。システム環境設定からGUI操作でプライバシー設定をリセットすることができるが、許諾後・拒否後の挙動を何度も確認しなければならない時は面倒である。また「オートメーション」のプライバシー設定に関しては、システム環境設定からでは完全なリセットができない(削除ボタンがない。なんで?)。
そこで「tccutil
」コマンドの登場である。tccutil
を使うことで、プライバシー設定のリセットができる。
基本的な使用方法は、
$ tccutil command service [bundle_id]
である。
command
は唯一のサブコマンドであるreset
を指定する。
service
はプライバシー設定の種類を指定する。種類は検索すれば出てくるが、service-list
的なサブコマンドで一覧を出力して欲しい。All
を指定するとすべてのプライバシー設定が対象となる。開発中のアプリの挙動確認をする時は、All
と後述のbundle_id
を組み合わせればよい。
bundle_id
はリセットしたいアプリのバンドルIDを指定する。指定がない場合はその種類のプライバシー設定すべてをリセットする。
まとめると、
$ tccutil reset All com.genjiapp.Silver-Baton
のようになる。上記コマンドを実行すると、すべてのプライバシー設定からバンドルIDcom.genjiapp.Silver-Baton
を持つアプリが削除される(リセットされる)。
2021年01月22日, 編集履歴
iOS用Kindleアプリにはストレージ容量を喰い潰す問題がある。

上記画像はiPad miniにインストールされているKindleアプリのストレージ使用状況である。96冊のKindle本が保存されており、そのほとんどは文字もの/リフロー本である。リフロー本は小説等の文字中心の書籍なので、表紙や挿絵等の画像が含まれていたとしても、1冊ごとのファイルサイズはせいぜい数MB程度になるはずである。
にもかかわらず、ストレージ使用量が17.13GBとなっている。通常ではありえない。私のiPad miniは32GBモデルなので、ストレージ容量の大半をKindleアプリが使用していることになる。
なぜこんなことになっているのか。
私はKindleで漫画本をよく読むのだが、Kindleアプリには、おそらくは、漫画本の画像キャッシュ等が消去されずにずっと残り続けてしまう問題がある。漫画本が端末から削除された後も、画像キャッシュが残り続けてストレージを喰い潰していく。ひとつひとつのキャッシュは大したことがなかったとしても、積もり積もってギガバイト級に膨れ上がるのだ。
このキャッシュを削除するには、Kindleアプリからログアウトするかアプリ自体を削除するしかない。

Kindleアプリからログアウトした後のストレージ使用量。

再ログインして96冊再ダウンロードした後のストレージ使用量。17.13GBだった使用量が907.6MBまで減少した。すっきり。
ログアウトもアプリ削除も、ダウンロード済みのKindle本は端末から削除される。積ん読がたくさんある場合は、再ログイン後にダウンロードし直す手間が掛かってしまうのが難点である。「キャッシュを削除」的な機能があればいいのだがそんなものはない。数年前にKindleのサポートに問い合わせたことがあるが、いっこうに改善はされない。
積ん読が常にゼロの状態であれば気軽にリセットできるのにね!
本来不要なデータで端末のストレージ容量を消費しているかもしれないので、Kindleで漫画本をたくさん読むひとは一度チェックしてみてはどうか。
2020年12月07日, 編集履歴
中古のiPhone 8を中古ショップ「じゃんぱら」で購入した。
iPhone 7からの乗り換えである。iPhone 7のバッテリー劣化が進み1日持たなくなってきていた。就寝前に90%以上あったバッテリー残量が、朝起きたら0で電源が落ちていたこともあった。iOS上の表示でも修理サービスを推奨されていたりもした。iPhone 12系にTouch IDが付いていれば欲しかったのだが、Face IDのみだったので見送り。来年のiPhone 13系に期待。
それまでの繋ぎとしてiPhone 8の中古を購入した。中古ショップの中から「じゃんぱら」を選んだのは次の理由。
- 大きな実物写真がある(写真がないものもある)
- バッテリー最大容量記載がある(記載がないものもある)
- 検索や条件絞り込みがしやすい
「中古 iphone」とかで検索して出てくる中古ショップの中でじゃんぱらが一番使いやすかった。他のショップにも、上記のひとつかふたつを満たすものはあったが、実物写真がまったくなかったり、解りづらかったり、検索や絞り込みがザルで目当ての品が探しにくかったりした。
たとえば、じゃんぱらで「iPhone 8」「レッド」「外装ランクB以上」「バッテリー最大容量が95%以上」の在庫は、
iPhone8(iPhone)の検索結果 全店舗|じゃんぱら
のようになる(詳細検索で「未使用」と「外装ランク」で組み合わせると結果が出ないとか、詳細検索と絞り込み検索が併用できないとかの不具合?がある。除外キーワード等で工夫しなければならない)。
今回購入したiPhone 8は外装ランクAでバッテリー最大容量100%のものを選んだ。届いた商品は外装に傷ひとつなく新品同様だった。おそらく前所有者がApple Care等の保障制度を使用して新品状態に交換してから売り払ったのではと予想する。
今まで使っていたiPhone 7も2019年1月にじゃんぱらで購入した。外装ランクBだったその端末は、側面に小さな傷がひとつと背面にケース着脱によると思われる目立たないスレがあった。私的には、中古品としては美品の部類だったと思う。
じゃんぱらでは中古品のランクに、未使用品・A〜Dがある。私が2回購入した経験上では、外装ランクBで小さな傷、Aで新品同様の品が届いた。
外装ランクが同じでも、購入者の中古品に対する考え方や、ショップ側の査定者によって程度は異なるだろうから、必ず実物写真を確認した上で、ランクB以上の中から購入すれば、そうひどい状態のものは届かないだろう。
SIMロック未解除トラブル
本来であれば記事はもう終わりだったのだが、今回購入した品が「SIMロック解除済み」を謳っていたはずが、届いた端末はロック未解除状態で手持ちのMVNO SIMが使えないというトラブルに見舞われた。
販売ショップに問い合わせたらすぐにロック解除してくれた。それまで知らなかったのだが、SIMロックって非所有者が端末が手元にない状態でもかんたんに解除できるものなんだね。ショップに問い合わせずとも、自分でも手数料も掛からず解除できるようだ。
レアケースだろうし、トラブルとは言え瑣末なものだったが、一応記載しておく。
ともあれ、中古iPhone探すなら「じゃんぱら」がなかなか良いと思う。