UfoTwCtrlの方を作成する過程で気づいた、画面オン時に画面タップではなくボタン操作等で停止(ボリューム0)にしても停止しない、というバグについて修正しました。
今まで、タイミングが悪く、このアプリで接続を検知できていないのにU.F.O. SA、A10サイクロンSA、A10サイクロンSA +PLUS(プラス)、バッハスマート、ROCKET+1D等のデバイスの方は接続完了状態になってしまっていて上手くコントロールができないという状況が発生した際に、Bluetoothを一旦オフにしてオンにし直して接続状態を解除してもらってからこのアプリでの接続作業をやり直してもらう必要がありました。
これについて、筆者は今までアプリで知る手段が無いとしていたのですが、どうやら筆者の勘違いにより間違ったAPIを使用していたために取得ができなかったみたいです。すみません。
というわけで、こういった『先にAndroid端末とは接続してしまっているがこのアプリとは接続ができていない』というケースについても拾い上げてこのアプリで接続できるように改修しました。
ただ、この手のイレギュラーケースは意図的に起こすことが難しく、実機テストが十分に行えません。
よって上手く機能しないケースが残っているかも知れません。
デバイスの方だけは接続状態になってしまったままどうしてもアプリで接続できないという場合にはすみませんが従来どおり一旦Bluetoothをオフにして接続状態を解除してからやり直すという手順を踏んでください。
また、拾い上げることは可能にはなりましたが、上記のような状態になっているデバイスをアプリから接続解除しても、アプリとの接続は切れますがAndroid端末そのものとの接続はそのまま残ってしまうためデバイスの方は接続状態を維持してしまいますのでご了承ください。
U.F.O. SAを例にしてご説明しますと、通常、アプリから接続をするとLEDが青く点灯し、接続を解除すると白い点灯になりますが、アプリから接続する前に既に青になっている状態でアプリから接続をして接続解除をしても青いままで白には戻りません。
U.F.O. TWとA10サイクロンSA、A10サイクロンSA +PLUS(プラス)、バッハスマート、ROCKET+1D等を同時に使用したいという場合にはUfoTwCtrlとこちらのUfoSaCtrlTripの両方のアプリを起動させることになるわけですが、表に出てきている方の画面の操作しか出来ないため、例えば同時に停止したいとか同時に動かし始めたい、なんてときには画面を入れ替えて操作とか超絶面倒臭いことになります。
そこで、今回、どちらの画面が表に来ていても、ボリュームボタン等のメディアボタンによる操作はUfoSaCtrlTripとUfoTwCtrlの両方に反映させるようにしました。
実はこれ、過去にUfoSaCtrlProとUfoSaCtrlDualを公開していたときに実装していたものと同じ仕組みで、当時はこれで最大3台コントロール出来るぜ!って息巻いていたのですが、その後1つのアプリで最大3台まで制御出来るようになったUfoSaCtrlTripを公開したことでこのアプリに収束してお役御免となっていたものです。
UfoSaCtrlProとUfoSaCtrlDualのときには対応出来る機器に差が無く、単に筆者がU.F.O. SA2台を制御したいという目的で開発したUfoSaCtrlDualと、その他のA10サイクロンSA、A10サイクロンSA +PLUS(プラス)、バッハスマート、ROCKET+1D等を同時に使用したいケースを考慮して実装していたロジックでした。
今回はU.F.O. TWの制御周りが今までの対応機器とは似て非なるものとなってしまったために単純に1つのアプリにまとめることが難しく、当面は別アプリのままで同時使用したい場合はUfoTwCtrlとこちらのUfoSaCtrlTripとを同時起動して使って頂こうと思い、この実装を復活させました。
対応できるバージョンはこちらのアプリUfoSaCtrlTripVer2.10以上とUfoTwCtrlVer1.10以上の組み合わせのみとなります。
古いバージョンでは連携が働きませんのでご注意ください。
また、連携するのはメディアボタンと呼ばれるボリュームボタンとか音楽再生関連ボタンに限られます。
(100均などでも良く見かけるイヤホン端子に付けるリモコンシャッターは大抵ポリュームアップボタンとして機能します。筆者はこのリモコンシャッターでアプリのボリューム調整をしています。)
リモコンシャッターで両方のアプリのボリューム調整を行っているデモ動画を撮影しました。
ここをクリックorタップするとYoutubeに遷移します。
画面操作まで連携させると完全にワヤクチャになりますので、ボタン類のみの連携です。
動作させる前準備は全て画面操作を個別に行い、ボリューム操作のみを連携させる使い方が想定している使い方です。
なお、ボタン類の操作を連携させるだけですので、例えば連携前のボリュームが各アプリで違った状態になってますと、違ったままボリュームがズレて行くことになりますのでご注意ください。
値を同じにするのではなくてボリュームボタンが押されたという情報を両方のアプリに流す、という連携です。
その他については従来同様ですので、
『UfoSaCtrlTrip Ver2.00』
『UfoSaCtrlTrip Ver1.0』
にある説明をご参照ください。
なお、Android12の実機を筆者は持っていませんのでAndroid12での動作確認は出来ておりません。
勝手な再配布はしないでください。
特に、うちのサイトは弱小なので、検索で上位に表示されるサイトに勝手にコピーされると、盗まれたのとほぼ同じ状況に陥ります。
何かしらの問題が発覚して、こちらのサイトでファイルを差し替えても、それが皆さんの元には反映されなくなることにも繋がります。
諸事情によりアプリの無料配布を終了致しました。
今後は活動を支援してくださる方とのみ細細と共有していければと思います。
今後のUfoCtrlアプリ配布ページはこちらです。
UfoCtrl Ver1.00 (UfoCtrl開発活動支援プラン)
ブログに無理矢理載せている都合上、ちょっと特殊なダウンロード形式にしているので、Androidの標準ブラウザではダウンロードに失敗するかもしれません。Chromeなら大丈夫みたい。ブラウザをある程度選んでしまうようです。ご了承ください。
アップデートインストール後に動作がおかしくなった場合は再起動してみてください。
それでもおかしい場合はキャッシュのクリアや一旦アンインストールしてからインストールし直してみてください。
その際、設定を書き換えている方はその設定が消えてしまいますので、操作をする前に設定の退避(テキストファイルなどに移して保存)をしてください。
アダルドグッズや同人コンテンツなどをご購入の際にはこのサイトのリンクを踏んでから購入していただけると、いくばくかの紹介料をいただけるので筆者が大変助かります。(製品の種類は問いません。)
このアプリや筆者の作成コンテンツが役に立ったとか面白かったとか、ありましたら応援していただけると幸いです。
↑2022-02-02