2022-10-12

Tasker の新機能・Get Screen Info を使ってみた

 〜 Rakuten Link の Bluetooth 対応のため 〜

 

 

Tasker の最新バージョンは 6.0.10(2022/07/12)で、いくつかの新機能が加わっています。

 

1.new Tasker mode - Tasky: Tasker Made Simple

  簡易版の Taskerモード

2.Get Screen Info action 

  テキスト、URL など、現在開いているアプリに関する
  多くの情報を取得

3.root または adb Wifi なしで機内モード

4.特定のアプリで URL をブラウズ、または使用する
  アプリを尋ねるダイアログ表示

5.ロックされたデバイスのクイック設定タイル

6.Get Battery Info action

7.Get Pixel Color action

 

などなど。

 

 

ですが新機能の情報が少なく、詳細がよくはわかりません。



 

 

これらのうち、2番目の機能・Get Screen Info を使ってみました。

 

 

foreground アプリ(開いているアプリ)の確認は、これまでは、

 

 ❏ タスク編集 -> [プラグイン] -> [AutoInput] を選択し、

  [UI query] を実行後、%aiapp で「アプリ名」を確認

 


 

 

していましたが、

 

 ❏ タスク編集 -> [画面] ->

  [Get Screen Info (Assistant)] を実行後、

  %ai_app_name で「アプリ名」を確認、または

  %ai_app_package で「パッケージ名」を確認



 

ができるようになりました。

 

 

ほかの方法として、プロファイルとコンテキストで確認するやり方がありますが、処理が複雑化してうまくありません。

 

 

この新機能を使うと AutoInput プラグインを使わなくて済むのです。

 

AutoInput プラグインの機能自体はいいのですが、使うためにはフル機能が有料無料版は 30秒の広告動画を視聴する必要があり、ときにほかの広告も出ます。


一部機能のために有料版はもったいないし、さりとて無料版は広告の煩わしさもあります。

 

 

一方、Tasker ネイティブ新機能の Get Screen Info(Assistant) を使うには WRITE_SECURE_SETTINGS の権限を許可する必要があります。

 

権限は以下の adb コマンドを実行することで許可になります。

 % adb shell pm grant net.dinglisch.android.taskerm
android.permission.WRITE_SECURE_SETTINGS

 注) "taskerm" と "android.permission.~~" の間は一つ以上のスペース で空ける

 

 

 

実際のタスクの使い方は、次のようになります。


やりたいこと:

 開いているアプリが Rakuten Link ならば「アクション1を実行」し、
 そうでなければ「アクション2を実行」するタスクを作成

 

 

❏ AutoInput の場合

 

 AutoInput UI Query

 If 条件開始

  %aiapp eq Link

   アクション1

 Else

   アクション2

 End If 条件終了


  注) Rakuten Link のアプリ名は "Link"

 

 

 

❏ Get Screen Info (Assistant) の場合

 

 Get Screen Info (Assistant)

 If 条件開始

  %ai_app_package eq jp.co.rakuten.mobile.rcs

   アクション1

 Else

   アクション2

 End If 条件終了


  注) Rakuten Link のパッケージ名は "jp.co.rakuten.mobile.rcs"

     %ai_app_name 変数でアプリ名 "Link" を確認でもよい

 

 

 

なあ〜んだ、あまりかわらないじゃあないか、と思われるでしょうが、広告付きの無料版 AutoInput プラグインを使わなくて済むことは大きい。

 

AutoInput を自動起動/バッテリー使用制限無しにする必要もありませんのでバッテリー消費も少なくなります。

 

 

上記の事例は、Rakuten Link を Bluetooth に対応させて、電話呼び出しがあったときに自動応答するためのタスクの作成で使っています。

 

 

Rakuten Link への呼び出しはスマホがロックしているかどうかで違います。

 

ロック時は呼び出しで Rakuten Link アプリが開かれます。

 

ロックが解除されている状態では通知領域に呼び出し応答するかどうかのダイヤログがでます。

 

 

この状態の違いを検知する必要があります。

 

そのために上記事例のような処理をしたのです。

 

 

したがって 楽天Link でハンズフリー [その2] から一部変更になっています。

 

 

 

 

 

 

0 件のコメント: