Apple Watch で iPhone をロック解除と拙作 Apple Watch アプリ Densuke

2021/02/05(Fri) 19:05:59
iOS 14.5でマスクをしたままでもiPhoneのロック解除が顔認証で可能に - GIGAZINE
https://gigazine.net/news/20210202-ios-14-5-unlocking-iphone-face-mask/

2021/02/05(Fri) 19:06:39
How to use the new 'Unlock with Apple Watch' iPhone feature - 9to5Mac
https://9to5mac.com/2021/02/04/iphone-face-id-unlock-apple-watch-mask/

マスクをしている時に、Apple Watch で iPhone をロック解除できるようになるみたい。
心電図も利用可能になったし、Apple Watch 買おうかな?

Xcode で 画像と時刻を表示する簡単な Apple Watch アプリ Densuke を作ってみました。
Xcode のシミュレータで撮ったスクリーンショットを下記に載せておきます。

図 1) 拙作 Apple Watch アプリ Densuke
図 2) Apple Watch 文字盤を表示

iOS カスタムキーボード作成

2020/12/28(Mon) 21:29:49
A Swift example of Custom Views for Data Input (custom in-app keyboard) - Stack Overflow
https://stackoverflow.com/questions/33474771/a-swift-example-of-custom-views-for-data-input-custom-in-app-keyboard/57275689#57275689

上記サイトをメインに下記サイトで知識を補って、ボタンをタップすると定型文を入力するカスタムキーボードを自分専用に作ってみました。
意外と便利。

Apple の資料
2020/12/28(Mon) 21:45:20
App Extension Programming Guide: Custom Keyboard
https://developer.apple.com/library/archive/documentation/General/Conceptual/ExtensibilityPG/CustomKeyboard.html#//apple_ref/doc/uid/TP40014214-CH16-SW1

2020/12/28(Mon) 20:27:47
Creating a Custom Keyboard | Apple Developer Documentation
https://developer.apple.com/documentation/uikit/keyboards_and_input/creating_a_custom_keyboard

2020/12/28(Mon) 20:27:29
Handling Text Interactions in Custom Keyboards | Apple Developer Documentation
https://developer.apple.com/documentation/uikit/keyboards_and_input/creating_a_custom_keyboard/handling_text_interactions_in_custom_keyboards

2020/12/28(Mon) 21:47:37
textDocumentProxy | Apple Developer Documentation
https://developer.apple.com/documentation/uikit/uiinputviewcontroller/1618193-textdocumentproxy

2020/12/28(Mon) 21:48:02
UITextDocumentProxy | Apple Developer Documentation
https://developer.apple.com/documentation/uikit/uitextdocumentproxy
その他
2020/12/28(Mon) 21:41:54
Creating a Custom Keyboard Using iOS 8 App Extension
https://www.appcoda.com/custom-keyboard-tutorial/

2020/12/28(Mon) 21:46:56
Custom Keyboard Extensions: Getting Started | raywenderlich.com
https://www.raywenderlich.com/49-custom-keyboard-extensions-getting-started

Twitter

Twitter のツイートを埋め込んでみた。

ブックマークレット

「Bookmarklet」

使い方

  1. ブラウザで上記リンクをブックマークバーにドラッグ・ドロップして登録します。
  2. ブラウザでタイトルと URL をコピーしたいサイトを開き、先程登録したブックマークを選ぶとクリップボードに日付、タイトル、URL がコピーされます。
  3. テキストエディタなどで挿入したい箇所にペーストしてください。
  4. このページを上記3番目のブックマークレットを使うと下記の通りになります。
2020/12/13(Sun) 16:56:22
ブックマークレット | KOYAMA Yoshiaki のブログ - WordPress 出張所
https://kyoshiaki.sakura.ne.jp/wp/?p=588

最近、WordPress を使い始めたので、必要にかられて作成してみました。

追記: 2020/12/19(Sat) 23:42:14
文字色と背景色を変更してみた。

Nintendo Switch 版ダウンロードソフト 'プチコン4' で遊べるマインスイーパ YOS_MINE4 と PC からプチコン4へファイルを転送するためのソフトウェア Petit4Send の簡易説明書を公開。

Nintendo Switch|ダウンロード購入|プチコン4 SmileBASIC
https://ec.nintendo.com/JP/ja/titles/70010000010547

Nintendo Switch 版ダウンロードソフト ‘プチコン4′ で遊べるマインスイーパを作ってみました。良かったらダウンロードしてみてください。公開キーと実行画面を載せておきます。

マインスイーパ(YOS_MINE4)
ヨシアキ
YOS_MINE4
マス目上に置かれたセルを開き、地雷以外のセルをすべて開くゲーム。
公開キー 4TAJVV3NJ

実行画面

2019/08/23(Fri) 19:44:57
麗の小屋 - PetitCom4 File Sender Petit4Send -
http://rei.to/petit4send.html

PCからプチコン4へファイルを転送するためのソフトウェア Petit4Send には大変お世話になりました。簡単な簡易説明書を下記のように書いてみました。

プチコン4で作成したプログラムをPCに転送する方法。

プチコン4で作成したプログラムをPCに転送するのは比較的簡単です。

「Pro Micro」(Arduino互換機)などは必要ありません。

必要なのは Nintendo Switch 本体背面、Nintendo Switch Lite の場合は底面に装着する microSD メモリカード (または microSDHC、microSDXC メモリカード) だけです。

麗の小屋 - PetitCom4 File Sender Petit4Send -
http://rei.to/petit4send.html

上記サイトのダウンロード・頒布より、PCとプチコン4側それぞれにソフトをダウンロードします。

プチコン4の

TOPMENU > ファイル操作 > 使用するプロジェクトを変更

で設定したカレントプロジェクトに P4SEND122.PRG と PC に転送したいプログラムをコピーします。

TOPMENU > プログラムを作る

をタップします。- ボタンを押してソフトウェアキーボードを表示し、Lボタンを押しながらソフトウェアキーボード上部にある ‘簡易LOAD’ をタップして P4SEND122.PRG を読み込みます。次に + ボタンを押して実行します。

表示されるメニューから SCREENSHOT SEND を方向ボタン上下または Nintendo Switch Lite の場合、十字ボタン上下で選び、Aボタンを押して選択します。
ファイル選択画面が表示されるのでPCに転送したいファイルを選びます。

ファイル名や圧縮状態が表示されます。圧縮が終了したら画像の枚数が表示されるので、Aボタンを押して転送したいプログラムの画像を表示します。

Nintendo Switch Joy-Con (L) のキャプチャーボタン (四角いボタン)、Nintendo Switch Lite の場合は、正面左側のキャプチャーボタン (四角いボタン) を押して画像ファイルに保存します。

Aボタンを押すとメニュー画面に戻るので、複数のプログラムをPCに保存したいなら、再度、SCREENSHOT SEND を選んで先ほどと同様にプログラムを画像に変換して保存してください。

ちゃんと画像が保存されているか、Nintendo Switch HOME メニューのアルバムアイコンをタップして確認してください。

電源ボタンを長押しして

電源オプション > 電源OFF

を選んで電源を切ってください。

Nintendo Switch 本体背面、Nintendo Switch Lite の場合は底面から microSD メモリカードを取り出し、SD カードリーダーなどにセットし PC に接続します。

エクスプローラの左側ナビゲーションウィンドウで PC を選んで、SD カードドライブを開きます。

Nintendo という名前のフォルダが見えるはずです。その中の Album フォルダにキャプチャーした画像が入っています。

西暦/月/日 でフォルダ分けされています。2019年08月23日に撮った画像は、Nintendo/Album/2019/08/23フォルダに格納されています。

PC 側のソフト Petit4Send.exe を起動します。

Windows によって PC が保護されましたと表示されたら、詳細情報をクリックすると実行ボタンが現れるのでクリックしてください。

表示されたウインドウの Decode Image タブを選択します。
ウィンドウの中にキャプチャーした画像 (先ほどの例だと Nintendo/Album/2019/08/23 フォルダ内の画像) を全てドラッグ・ドロップしてください。

ウィンドウの内部に画像のファイル名やサイズが表示されます。

Convert ボタンをクリックしてテキストに変換します。

デフォルトだとドキュメントフォルダにUTF-8のTXT形式のファイルとして保存されます。

これでプチコン4で作成したプログラムをPCに転送することができました。

■ PC からプチコン4に画像やプログラムを転送する方法。

PC からプチコン4に画像やテキストを転送するには、「Pro Micro」(Arduino互換機) が必要です。

私が購入した「Pro Micro」(Arduino互換機)は

KeeYees Pro Micro ATmega32U4 5V/16MHz Arduino Leonardo互換マイクロコントローラ Micro USB 開発ボード (3個)
1,780 円

です。

Petit4Send を試すために、私が購入したものは最後に記載してあります。不必要なものもあるし、半田ごてなど別途必要なものもあるので参考程度にしてください。iMac 5K の BootCamp 上 Windows 10 Pro 1903 OSビルド 18362.418 で動作確認済みです。

ブレッドボードは既に所有しているので購入しませんでした。ピンヘッダを差した KeeYees Pro Micro をブレッドボードで固定してはんだ付けしました。結局、TSKツールクリッパー TX303 は必要ありませんでした。

TSK ツールクリッパー TX303

TSK ツールクリッパー TX303

  • メディア: Tools & Hardware

半田付けの土台以外にブレッドボードは使用しませんでした。

麗の小屋 - PetitCom4 File Sender Petit4Send -
http://rei.to/petit4send.html

上記サイトの作り方の手順に従ってください。ただし、私の場合はブレッドボードを使用しないので、ピンヘッダの向きと使用したジャンパーワイヤの種類が違います。下図のようになります。

Windows 10 Proへのドライバのインストールですが、

2019/08/24(Sat) 16:55:42
Arduino - Software
https://www.arduino.cc/en/Main/Software

Arduino IDE をインストールすればドライバもインストールされるので、上記ページからWindows app Requires Win 8.1 or 10 の Get Windows アイコンをクリックしてインストールしました。

すぐに Petit4Send.exe を使って、ファームウェアを Pro Micro に書き込んで試しても良いのですが、所有している LED を使って動作確認することにしました。

Arudino IDEアプリで

メニュー > ファイル > スケッチ例 > 01.Basis > Blink

を選択して LED 点滅のスケッチを開いて、

メニュー > Help > リファレンス
Variables
Constants
LED_BUILTIN
Java/hardware/arduino/avr/variants/leonardo/pins_arduino.h
106:#define LED_BUILTIN 13

より、Pro Micro には Arduino の13ピンがないので LED を7番ピンに繋げることにして、ソースの LED_BUILTIN をすべて 7 に変更しました。あとはマイコンボードに書き込んで LED が点滅するのを確認しました。

Petit4Send.exe の動作確認は、PC と Nintendo Switch を Pro Micro 2台で繋げてから、プチコン4で

TOPMENU > プログラムを作る

をタップし、Xボタンを押してエディタを開きます。

PC 側で Petit4Send.exe を実行し、Keyboard タブを選び、Port を指定して Start ボタン押します。
PC でキーを入力した文字がプチコン4のテキストエディタに表示されれば正常に動作しています。

はんだ付けに不備があり、最初は失敗しました。再度、半田付けをやり直したら、PCからプチコン4に画像やプログラムの転送に成功しました。

■ アマゾンで購入したもの。

2019/07/02(Tue) 23:28:31
Amazon | 本, ファッション, 家電から食品まで | アマゾン
https://www.amazon.co.jp/gp/homepage.html
KeeYees Pro Micro ATmega32U4 5V/16MHz Arduino Leonardo互換マイクロコントローラ Micro USB 開発ボード (3個)
1,780 円
数量: 1
販売: KeeYees-JP
TSK ツールクリッパー TX303
1,616 円
16pt (1%)
数量: 1
販売: Amazon Japan G.K.
注文内容
商品の小計: 3,396 円
配送料・手数料: 0 円
合計: 3,396 円
Amazon ポイント: -14 円
ご請求額: 3,382 円
TSK ツールクリッパー TX303

TSK ツールクリッパー TX303

  • メディア: Tools & Hardware

秋月電子通商で購入したもの

2019/07/02(Tue) 19:51:02
秋月電子通商 - 電子部品・半導体 【通販・販売】
http://akizukidenshi.com/catalog/top.aspx

オーダーID E??????-??????-??
通販コード 商品名 価格 数量 合計

P-03474 ブレッドボード・ジャンパー延長ワイヤ(メス-メス)15cm赤 1セット 330 円
数量: 1 セット 330 円

C-09313 USBケーブル USB2.0 Aオス-マイクロBオス 0.3m A-microB
1本 110 円
数量: 2 本 220 円

C-07607 USBケーブル USB2.0 Aオス-マイクロBオス 1.5m A-microB
1本 120 円
数量: 1 本 120 円

C-13428 USB OTGケーブル TypeC 10cm
1本 250 円
数量: 1 本 250 円

T-02594 はんだ 0.8mm 1個 210 円
数量: 1 個 210 円

商品小計 1,130 円
送料(佐川急便の場合) 500 円
合計金額(銀行振込、クレジット決済の場合)1,630 円
代引き手数料(金額に関係なく一律) 300 円
合計金額(代引きの場合) 1,930 円

PC 内の音声ファイルをブラウザで再生する Ruby on Rails プログラム yplayer を公開。

PC 内の音声ファイルをブラウザで再生する Ruby on Rails プログラム yplayer を下記 URL で公開します。

kyoshiaki/yplayer
https://github.com/kyoshiaki/yplayer
yplayer/README.md
https://github.com/kyoshiaki/yplayer/blob/master/README.md

詳しい解説は上記 URL の README.md を参照してください。README.md は Markdown 記法で書かれています。上記サイトでプレビューを見ることができます。

最近だと Markdown 記法ファイルの表示、編集には下記 URL の エディタ Visual Studio Code を使うのが一番簡単です

Visual Studio Code - Code Editing. Redefined
https://code.visualstudio.com/

GitHub や git に不慣れだったり、私にとって Ruby on Rails の仕組みが複雑すぎて yplayer がうまく動作するか心配ですが、よかったらダウンロードしてみてください。

後、私の運用方法ですが、Raspberry Pi 2 Model B に

2018/11/04(Sun) 00:05:40
【 日本正規代理店品 】 Seagate 外付けハードディスク 2TB 3.5インチ USB3.0 3年保証 Expansion デスクトップ STEB2000100
販売: Amazon Japan G.K.
¥ 8,380
注文内容
商品の小計:¥ 8,380
配送料・手数料:¥ 0
注文合計:¥ 8,380
タイムセール割引:-¥ 1,200
ご請求額:
¥ 7,180

上記、アマゾンのタイムセールで安売りしてた Seagate 外付けハードディスク 2TB 3.5インチ USB 3.0 (Raspberry Pi の USB 規格は 2.0 です。) を ext4 形式でフォーマットして繋げ、

yplayer/tools/README.md
https://github.com/kyoshiaki/yplayer/blob/master/tools/README.md

上記 tools/README.md で紹介したスクリプト rec_radiko_live.sh を crontab で指定時刻に起動するように予約して Radiko を録音しています。

以前は 64GB の SDカードに録音し、拙作 delete.py を使ってディレクトリごとに最新 28 個のファイルだけ残すようにしていたのですが、SD カードでエラーが出るようになったので、ハードディスクに保存するように変更しました。今現在、録音した音声ファイルは全て残しています。

録音に失敗したら macOS Mojave バージョン 10.14.3(18D109)のターミナルで、同じ上記 tools/README.md で紹介したスクリプト rec_radiko_ts.sh を使ってダウンロードしています。ダウンロードした音声データはコマンド scp を使って Raspberry Pi 2 Model B に繋げたハードディスクにコピーしています。

yplayer は Raspberry Pi 2 Model B の電源を入れたら systemd を使って自動起動するようになっています。

上記スクリプトで録音した Radiko の音声ファイルを yplayer を使って iPhone XS MaxSafari で聴いています。
ほとんど自動化されているので聴きたくなったら Safari を起動する感じです。

Raspberry Pi 2 Model B に不満がないので Raspberry Pi 3 Model B+ は買うか悩んでいます。
Synology などの NAS にも興味があります。NAS があれば yplayer も必要ないかもしれません。

近況と書籍 Creative Selection、Programming Rust の紹介

ご無沙汰しています。

Raspberry Pi を主に Radiko の録音に使っています。最近、何度も挑戦して諦めていた Ruby on Rails が理解できるようになりました。

Raspberry Pi 上で録音した音声ファイルを iOS の GoodReader で聴いていたのですが、ブラウザで再生する Ruby on Rails プログラム yplayer を作ってみました。ほとんど完成しているのですが、実行画面と動画をちょっとだけチラ見しておきます。

実行画面

動画

この動画は Ruby on Rails をインストールした Rapsberry Pi 上で、録音した Radiko.jp の音声ファイルを yplayer を使って、iPhone XS MaxSafari で聴いている様子を録画したものです。

公開するためにはもうしばらくかかりそうです。できれば GitHub で公開しようと思っています。

今日は2つ書籍を紹介します。

まず最初は

2018/11/18(Sun) 14:32:41
Amazon.com
Creative Selection: Inside Apple's Design Process During the Golden Age of Steve Jobs Kindle Edition
by Ken Kocienda (Author)
Audible Audiobook from $16.22 

Hardcover  $18.89

Paperback $12.90

Kindle $15.07

1$=¥112.82
¥1700
クレジット会社からの請求
¥1750

です。私は米国 Amazon.comKindle 版を購入しています。日本の Amazon.co.jpKindle 版を購入すると 1,474 円 と割安です。

Podcast、Rebuild.fm と Misreading Chat で紹介されていました。

Rebuild - Podcast by Tatsuhiko Miyagawa
http://rebuild.fm/
Misreading Chat – CS の論文読んで話をしよう
https://misreading.chat/

Apple の製品開発プロセスの内情を紹介したものです。作者 Ken Kocienda さんが関わったプロジェクト SafariiOS のソフトウェアキーボードの開発過程が詳細に説明されています。

最初に Steve Jobs 氏の前でデモする場面が書いてあるのですが、読みながら緊張してしまいました。時代背景の説明や識者からの言葉の引用があったり面白く読めました。

作者はオリジナル Macintosh の開発者 Bud Tribble さんと Mac のソフトウェアエンジニア Andy Hertzfeld さんが起こしたスタートアップ会社 Eazel で働いていました。

その時の上司だった Don Melton さんと一緒にアップルに入社します。Don さんは Eazel の前に Netscape に勤めていました。Ezael で Linux 向けに作った Nautilusオープンソースだったのは WebKitオープンソースだったりするのに影響しているのでしょうか?

作者はアップルで自前のウェブブラウザを開発することになるのですが、最初は Mozilla を移植しようと取り組んでいました。上手くいかず、新しく入った元 NeXT 社員、Richard Williamson さんが KHTML を移植し、頓挫していたプロジェクトの救世主になります。

WebKit
https://webkit.org/
Blink - The Chromium Projects
https://www.chromium.org/blink

KHTML をフォークした Safari のブラウザエンジン WebKitSafariWebKit を fork した blink、Chrome の基礎となるわけですから、世の中わからないですよね。

全然関係ないですが Steve Jobs 氏が現在の Apple Store、店舗を開くと聞いた時、大丈夫かなと思ったのですが、それが iPhone のサポートなどに使われるわけですから、私のような凡人には予測不可能ですね。

2018/12/07(Fri) 15:56:38
Microsoft Edge: Making the web better through more open source collaboration - Windows Experience BlogWindows Experience Blog
https://blogs.windows.com/windowsexperience/2018/12/06/microsoft-edge-making-the-web-better-through-more-open-source-collaboration/

上記よりブラウザ勢力図はどうなるんでしょうか?

iOS のキーボートを開発していく過程も細かく描写されています。iPhone を見た時の感動や iPhone が発表されて初めて製品名が iPhone だと知ったことなどが書かれています。

後半には題名 Creative Selection にもなっている Apple開発プロセス demo -> feedback -> next demo: creative selection と Google の A/B テストを用いた開発の違いが説明されています。

英語力が乏しいので間違って理解している箇所もあるかもしれません。

もう一冊は

2018/07/06(Fri) 18:38:39
Amazon.com
Programming Rust: Fast, Safe Systems Development 1st Edition, Kindle Edition
by Jim Blandy (Author), Jason Orendorff (Author)
Digital List Price: $50.99
Print List Price: $59.99 Save $26.67 (44%)
Kindle
$33.32
1$=¥110.63
¥3686
クレジット会社
¥3771

Programming Rust: Fast, Safe Systems Development

Programming Rust: Fast, Safe Systems Development

プログラミングRust

プログラミングRust

です。以前からプログラミング言語 Rust に興味を持っていました。読んでいる途中ですが、Rust を理解するには、インタープリタコンパイラがどのように作られているか理解している必要性を感じました。lifetime parameter のように言語の構造がむき出しになっている部分もあります。簡単なプログラミング言語 basic

basic version 1.0.0
http://kyoshiaki.sakura.ne.jp/osx/lion.html#bas100

を作成した経験やプログラミング言語作成の書籍を読んだ知識が理解するのに役に立ちました。