【自動化】MacroDroid Part3【マクロ】

■ このスレッドは過去ログ倉庫に格納されています
2021/06/20(日) 14:29:20.82ID:Sdw0XNZk
Androidの操作を自動化するアプリMacroDroidの専用スレです。
マクロ製作の質問や情報交換をしましょう。作成したマクロの共有も大歓迎です。

次スレは>>950が立てること。立てられない場合は>>980が代わりに立ててあげてください。
2021/06/30(水) 23:23:00.97ID:shg70EP+
このスレは達人&優しい人いて助かる
2021/06/30(水) 23:39:16.65ID:68sDRWPQ
>>36
やっぱダメです
https://i.imgur.com/zC5126Z.png
2021/06/30(水) 23:42:42.33ID:jDYaT+tu
起動中のアプリを全終了するマクロを以下のロジックで作ったんですが、

@最近使ったアプリを表示
A左から右にスワイプ×3
B「全てクリア」の位置をクリック

もっと綺麗な実現の仕方ってあります?
非rootのandroid11です
2021/07/01(木) 00:15:55.49ID:SheSPb71
>>43
shellもいらない
pmから後ろがコマンドだよ
adbというのが接続用のプログラムで
adb shellでシェルにログインするコマンドになる
pmがスマホ内にあるパッケージマネージャーというコマンド。
既にシェルにログインしてるからpm〜を入力。
2021/07/01(木) 00:43:32.17ID:SheSPb71
>>41
Googleが配布しているadbコマンドの説明だから
非公式アプリがAndroid11に対応してるかは分からんね
2021/07/01(木) 00:44:10.00ID:tYjIxZ79
>>44
2のスワイプはイランのじゃないかな
個人的には特に動いててもらうと困るアブリ/サービスがなければタスク終了しなくていいと思うけどね
2021/07/01(木) 09:06:49.23ID:UbU16Evw
>>43です
>>45
タブレットの方がうまくいきました!
OPPO A5 2020 →iplay40だとうまくいき
iplay40→OPPO A5 2020の方が未だどうにも


pm grant com.arlosoft.macrodroid android.permission.WRITE_SECURE_SETTINGS

pm grant com.arlosoft.macrodroid android.permission.CHANGE_CONFIGURATION
2021/07/01(木) 10:50:13.40ID:9B4ZuTWO
>>40
非rootな上Android11なので心許ないですが調べてみます。
ただ通知云々よりVPNのアプリが落ちてるので、通知も出ないのです。
バックグラウンドアプリの監視が非rootで出来れば簡単かと思ったのですけどね。
2021/07/01(木) 11:24:55.63ID:tYjIxZ79
>>49
open vpnアブリをクライアントに使えるならプラグインがあるから正常に動作してる限りトリガでも通知でも適宜ステータス取れるイベントあると思うんだけどね
アブリがクラッシュしたときはOSにレポート発行するみたいだけどOSがインテント出さないと他のアブリは知る由もないわけで
https://play.google.com/store/apps/details?id=de.blinkt.openvpn
2021/07/02(金) 06:49:43.65ID:3TxVJ8d+
ADB Hack済でMDヘルパーも導入済なのですがモバイルデータのON/OFFが動作しません
クイックパネルには反映されても通知バーは無反応で通信も出来ません
Wi-Fiは問題なく動作しているのですがこれはrootを取得しないと駄目なのでしょうか?
2021/07/02(金) 09:12:34.83ID:ez4l5s5A
>>51
adbハックの場合どの機種でも動くわけじゃないってヘルプに書いてあるね
システム変数に同義のものがあると思うから書き換えてみたら?
結果が同じならダメってことで
2021/07/02(金) 10:20:22.69ID:3TxVJ8d+
>>52
ありがとうございます
変数はまだ使ったことがなかったので調べてみます
2021/07/02(金) 12:07:21.82ID:ez4l5s5A
>>53
普通の変数じゃなくてシステム設定アクションにあるグローバルとかセキュアに分類されてるOS管理のシステム変数ね
念のため
どっちかにモバイルデータのon/offを意味する値があったと思ったな
グローバルだったかな
2021/07/03(土) 16:22:43.13ID:CHj0WabW
非常に初歩的なことで恐縮ですが、特定のゲームをしている間だけ画面を常時オンにして、ゲームを閉じたあとは30秒で画面オフになるように設定したいです。
画像のような設定にすると、ゲームを終えたあとも常時画面オンのままになるのですが、対処法がありますか?


https://i.imgur.com/htqxjVZ.png
2021/07/03(土) 16:50:20.91ID:CHj0WabW
>>55
そしてマクロドロイド自体を無効にしても画面ついたまんま…
2021/07/03(土) 17:18:13.93ID:KPhusK6G
まずは貴方がどれだけの情報(ログ画面とか)を出してくれるのかで大夫違うかな
あとMacroDroid画面上アクションを実行した時にはちゃんと切り替わるのか?にもよるのでテスト結果報告などもね
2021/07/03(土) 17:40:28.12ID:tsaX9PaP
>>55
画面の常時onを取り消すようにoffを入れて消してしまえばいいんではないかな?
即消えがイヤならMacrodroidの機能でウエイトいれてみて
ロックはOSに任せないと指紋使えなくてPINの刑にされた記憶ある
2021/07/03(土) 18:32:04.30ID:CHj0WabW
>>58
画面オンを消すために2つ目の画面オフのマクロを入れたつもりだったのですが、これとは違うやり方があるのでしょうか?
2021/07/03(土) 18:35:36.99ID:CHj0WabW
>>57

https://i.imgur.com/m8jJw2F.png

ログはこれでいいんでしょうか?
画面オフのマクロをテストで実行してみたのですが、画面オンのままです…
2021/07/03(土) 19:07:36.70ID:cRrUWv8F
MacroDroid初めてまもなくてどなたかヒントください
やりたいことはこの2つのマクロを1つのマクロにまとめたいです

ver1
トリガー
画面オフの時

アクション
1分後に
機内モードに
------------
ver2
トリガー
画面がオンの時

アクション
ver1をキャンセル
機内モードオフ
https://i.imgur.com/skpPzMR.jpg
62名無しさん@お腹いっぱい。
垢版 |
2021/07/03(土) 19:29:58.53ID:2xEuAVOO
https://drive.google.com/file/d/1Da-ANffB68IEDnKVqZFdYXhPgFDonlVB/view?usp=drivesdk

pixivのコレクションがめっちゃ溜まってたのでタグ付けがめんどくさくてマクロを作りました。安定性重視です。画面を横にして使います。改善点、より良いやり方等あったら教えて欲しいです。座標を利用している所があるので機種やバージョンが違うと出来ないと思います。僕のはSOG02みたいです。
2021/07/03(土) 19:57:22.12ID:V9vbkOh4
>>60
画面オフまでの時間設定30秒をクリックしてアクションを試した時に設定時間はちゃんと変わる?

もう一つこういった感じでマクロ組んだらどう?
https://i.imgur.com/yyi8EQw.jpg
2021/07/03(土) 19:58:38.60ID:xBSqH2wY
>>61

こんな感じ?

https://i.imgur.com/2vZzZvI.png
2021/07/03(土) 20:06:57.97ID:2xEuAVOO
>>62
画像です。すみません、まとめ方が分かんなくて…
https://i.imgur.com/U7XhxoJ.jpg
https://i.imgur.com/BSvMAk6.jpg
https://i.imgur.com/M4jm5mR.jpg
https://i.imgur.com/0pAg2SW.jpg
https://i.imgur.com/FBJ0xki.jpg
https://i.imgur.com/ICjINLv.jpg
https://i.imgur.com/a1PsLDl.jpg
https://i.imgur.com/2HV60Yb.jpg
https://i.imgur.com/HQkK7Yk.jpg
https://i.imgur.com/t0Ny2BU.jpg
https://i.imgur.com/pHBYOi3.jpg
https://i.imgur.com/sKIOJ9a.jpg
https://i.imgur.com/aPzvsLT.jpg
2021/07/03(土) 20:24:37.27ID:cRrUWv8F
>>64
それとほぼ同じものを作って見たことあるんですけど
画面オフになった状態から1分以内に
画面オンにした場合、機内モードオンがキャンセルされません

いうことで2つに分けて作った次第で
2021/07/03(土) 20:28:06.35ID:cRrUWv8F
画面がオフの時、1分後に機内モードに
ただし
1分以内に画面をオンにした時は機内モードオフにしない
こういうことをやりたくて
>>61これにしてます
2021/07/03(土) 20:42:19.94ID:cRrUWv8F
あ、スレ汚しすみませんでした
>>64
それでうまく行きますね
2021/07/03(土) 21:21:09.82ID:CHj0WabW
>>63
このマクロでできました!
ありがとうございました
2021/07/03(土) 22:31:35.31ID:tZs6niVf
>>54
ありがとうございます
mobile_dataなどそれらしきものを試してみましたが駄目でした
bluetoothやwifi、機内モードなども動作しなかったのでシステム設定の変数が反映されない機種なのかもしれません
通常のマクロでモバイルデータをオンにしたあとwifiをオン→オフにすると動作することが分かったのでこの方法でいこうと思います
2021/07/03(土) 23:38:37.89ID:tsaX9PaP
>>70
動いて何より
wifiのon/offにモバイルデータが引きずられて動作するてちと気持ち悪いけどまずは動かすのがいいね
原因はバグかもしれないしやってるうちに何か理由が見つかるかもしれないし
2021/07/03(土) 23:58:13.42ID:tsaX9PaP
>>65
そういや最近ね
操作入力をデータ化して汎用ルーチンに渡すとよろしくやってくれる君を作ろうと考えてて
メインの見通し良くなるかなあと
ウエイトあるからどうしてもベタ書きになるんでずっと悩ましかった

まぁ普通にできるなとは思うんだけどデータキャプチャモードがあったほうがいいかなとか
データ構造や受け渡しどうしようかとか
排他制御クリック君の方に持たせちゃうとかち合ったとき止まっちゃうんでひと工夫いるなとか
2021/07/04(日) 05:23:24.68ID:misnW8xI
「ファイルへの書き込み」で
〜に追加 のチェックを入れていない場合は上書きだと思っていたのですが
やってみると挙動が書き加えになっているようにみえます
これは仕様でしょうか?
もし仕様であれば上書きはどのように設定すればいいのでしょうか?
2021/07/04(日) 12:05:50.68ID:WZDCgGsR
https://i.imgur.com/CZtuHTo.jpg
特定のアプリを閉じた時(開いたり)発動するアクションetc
例えば
このアプリ選択で複数選択すると上手く作動してくれないです
アプリ「強制的に旧式を使用する」でも同様です

仕方なく
Tver単体、youtube単体、MXプレイヤー単体それぞれ作ってます
単体で作ればきちんと作動します
これって何が原因なのでしょう?情報不足なら指摘orエスパーしてください
OPPO A5 泥10
2021/07/04(日) 14:09:21.61ID:Ob3MXk3R
>>73
ファイル操作v2で削除してから書き込んでみては?
2021/07/04(日) 20:08:28.90ID:o/ociVFu
>>74
日本語が怪しいですね
2021/07/04(日) 20:44:27.26ID:jOiE2vDi
>>74
普通はうまく動かないマクロとログを持ってきて見てほしいと言う所でしょ?
エスパーしろと言うなら ColorOSだから普通のやり方だと動かない かな
2021/07/04(日) 22:14:48.96ID:aPo+tV1G
>>74
俺も単体じゃなくて動かない方のフローとログをみたいな
謎のOPPO挙動のせいでアブリ終了トリガを3つifブロックも3つにコピペしてるのと、1つのトリガ1つのifブロックでやるのとだと違ってくるのかもね

同一マクロの場合4秒のウエイト時間内に別のアブリ終了がやってくると先に走ってた方が止まるけど最後に起動したマクロが完走すれば結果は同じはずなんで別マクロだと問題ないってのはちょっと理由が分からないなあ
2021/07/04(日) 22:27:10.01ID:aPo+tV1G
>>73
アペンドが別にあるのにそういう仕様ってことはないと思うから確定ならバグじゃ?

かわさきの人がバグ報告なくなったって言ってたけどホーム画面左上のメニューから一番上のトラブルシューティング選べばレポートできるよ
2021/07/04(日) 22:44:33.29ID:misnW8xI
>>75
とりあえずそれでしのいでみます。ありがとうございます

>>79
どうも書き加えしてるのはAndroid11のGalaxyS20とRedmi Note 9Tで、
それ以外の古いOSの端末では上書きされてるようなんですよね。ひょっとするとAndroid11の端末では再現性があるのかもしれません
2021/07/04(日) 22:52:29.67ID:Ob3MXk3R
bluetooth機器のバッテリー残量って取得できないんだっけ?
探してもそれらしい項目がない
2021/07/05(月) 04:01:04.00ID:fHs/x5+n
>>81
Bluetaskでとれそうよ
試してみて
2021/07/05(月) 04:25:09.82ID:VLw7btGV
画面の明るさを現在の明るさから数パーセント上げるとか下げるマクロって作成可能なんでしょうか?
調べてみても指定した明るさにするアクションしか見たことがないので。
2021/07/05(月) 05:00:44.84ID:zXrE41ru
>>83
なんのためにそんな事したいの?

自分がやるとしたらこんな感じかなあ
1. 変数で現在の明るさを取得
2. %相当分をその取得値に足し引き
3. 明るさ指定時にその変数を利用
85散策人
垢版 |
2021/07/05(月) 07:50:21.25ID:J7RqlCO9
>>83 さん
>>84 さん
こんにちわ。

これは、
現状のMacrodroid標準ではできません。

理由としては、Macrodroidの明るさ指定アクションに変数を指定するためのオプションがなく、84さんの手順、1および2は可能ですが、3が不可能であるため、となります。

あとは画面輝度を任意に設定できるプラグインを探す位ですが、私が調べてみたところでは、そのようなプラグインは無さそうですね…
2021/07/05(月) 08:16:03.01ID:Xi6OlVCY
基本的なこと教えてください
未だ慣れてないので
全く同じトリガーで別アクションを別マクロで作ってます
基本的は同じトリガーなら同一マクロ内に収めた方がいいんでしょか?
現状)
vanced起動
マクロ1→Bluetoothオン
マクロ2→音量変更
マクロ3→自動回転on
2021/07/05(月) 08:17:33.69ID:fHs/x5+n
>>83
カレントの明るさは0〜100の値で取れるから>>84の言う通り計算すればできるよ
2021/07/05(月) 08:19:56.97ID:cCR03DfP
できますよ

https://i.imgur.com/qyHVlaS.png
2021/07/05(月) 08:22:22.09ID:cCR03DfP
ただ、明るさの段階は機種によって違うので、何パーセント掛けると明るく(暗く)なるかは要試行錯誤
2021/07/05(月) 08:22:51.99ID:zXrE41ru
>>85
何でも出来ないと決めつけたら出来ないよ?
簡単なテストマクロ作ってみたけどこれで画面の明るさが実行する度に10%ずつ明るくなっていく
https://i.imgur.com/3TvjTUc.jpg
これはやりたい事と違う?
2021/07/05(月) 08:24:42.45ID:fHs/x5+n
>>86
それは管理の問題だね
実際ひとつのマクロでしか使えないボタンとかウィジェットあるから入力マネージャーを作って実体は他に飛ばす仕組みを併用しようと思ってる

最初はあまり気にしなくてもいいと思うよ
お互い同じ要素を触りに行ったり実行順序に依存関係がなければちゃんと期待通り両方実行される
2021/07/05(月) 08:30:47.09ID:fHs/x5+n
変数指定しようとしてできなくて泣けるのはジェスチャーくらいな気がする
93散策人
垢版 |
2021/07/05(月) 10:39:18.04ID:J7RqlCO9
>>90 さん
なるほど。勉強になりました。
ありがとうございます。失礼しました。
94散策人
垢版 |
2021/07/05(月) 10:57:30.54ID:J7RqlCO9
>>88 さん

見逃してました。
変数を指定できるコンボボックスがあったとは…

機器の設定>システム設定で、画面の明るさをいじって試していたんですが、+の値でも-値の値でも画面が暗くなってどーしたものかと思っておりましたが、簡単でしたね…

https://i.imgur.com/GRc5ubD.jpg
2021/07/05(月) 12:46:35.91ID:SOStCiLm
>>94
画面→画面の明るさでいいんじゃない?

https://i.imgur.com/NiEnonb.png
2021/07/05(月) 15:26:25.34ID:RM7wl9dV
デュアルSIMのときモバイルデータの優先SIMを変更するアクションはありますかね?
2021/07/05(月) 16:08:39.90ID:UmUvc557
>>82
ありがとう、Bluetaskで検索してみたらフォーラムで同じ質問があって
マクロが作成されて既にテンプレートにアップロードされていたw
「ブルートゥースヘッドフォンバッテリーレベル通知」
2021/07/05(月) 16:18:47.66ID:Xi6OlVCY
>>91
たしかに管理しにくいですね
ありがとう
9983
垢版 |
2021/07/05(月) 17:21:33.55ID:zngMS4Wj
明るさの件での回答ありがとうございました
あまりスキルが無いのですがマクロ組んでみようと思います
2021/07/05(月) 22:17:24.93ID:fHs/x5+n
>>96
システム変数探すかsetpropするか
権限によって書き換えできないのはもういいよね
ポチポチとタップしていけば大抵のことは何でもできるよ
2021/07/06(火) 21:21:15.33ID:nG0KUcVJ
消音設定した状態で電話着信したとき
呼出音の音量変えてもボタン操作でボリューム上げても音が鳴らない
サイレント解除してから同じ操作をしてもやはり音が鳴らない

電話以外のアプリだと消音からでもちゃんとボリューム上がる
電話でも着信前に1目盛りでも音出すようにしてればボリューム上がる
これってAndroid共通の仕様?それともおま環かな?
2021/07/06(火) 22:13:10.16ID:ehLD+Kbh
>>101
その質問のどこにMacroDroid要素あるんだw
とりあえずサイレント設定で着信音がならないくて変えられないのは普通
解除しても変えられないのは音量ボタンのデフォルト設定が着信音量じゃなくてメディア音量に設定されてからに100ルピー
2021/07/06(火) 22:32:06.29ID:nG0KUcVJ
>>102
回答サンクス
やっぱそうだよね
操作してるのはマクロからだからmacrodroidの話なんだけどね 笑

電話鳴動中に手動操作するとバイブが止まっちゃう
VoIP的なアプリでも常にバイブ併用する設定しないで完全消音だとやはりボリューム上がってかないんでこの場合バイブはリンガー音鳴らしてる扱いみたい

今試してたのはXiaomiでボリュームボタンのデフォ設定がなくて状況に応じてスマート()に対象を変える仕様なのよ
電話鳴動し始めた後リンガーに対象が変わってるのは設定値画面に出しながらチェックしてるから間違いない
リンガー音の値は変わってるのに音が出ないのはおま環なのかなあと他の環境の話を聞かせてもらいたかった次第
2021/07/06(火) 22:35:46.20ID:nG0KUcVJ
まぁ現状解決策が思いつかないから電話のときは設定アプリの音量ゲージ触る例外書くよ
2021/07/07(水) 09:14:18.70ID:8NaVyt5W
突然MacroDroidの特定のアクションが反応しなくなった
ログ見てもアクションを認知してない
やっすい中華タブは奥が深い
今からリカバリ
2021/07/07(水) 11:38:06.72ID:yIycRemC
>>105
アクセシビリティ(ユーザー補助)の設定が外れるってのはよくあるよ
macrodroidに限らずこれが原因でいつの間にか動かなくなってたり
2021/07/07(水) 12:00:24.17ID:GOwB8mld
>>106
外れるのはまだ良いんだけど、機種によるのか有効なのに挙動が無効な時があるのがね。off→onで直るけど地味に面倒。
2021/07/07(水) 12:49:47.40ID:yIycRemC
>>107
TouchTask使って値が返ってこないと壊れることが多いな
ウエイト入れずに処理を積みすぎてmacrodroidがクラッシュしたときも割と壊れるからリブートの刑
2021/07/07(水) 16:21:39.92ID:INEtb29L
現在実行中のマクロ名の取得をしたいんだけど、
Macrodroidで事前に定義されている変数の一覧ってないかな?
[hour] や [dayofmonth]のような奴。
2021/07/07(水) 16:56:00.40ID:8NaVyt5W
>>106
オフオンしたけど>>107と同じ
>>108ここら辺が原因なのかもしれないと想像
リカバリ終わったが症状同じ。。マクロ点検してみるか
2021/07/07(水) 19:34:49.56ID:yIycRemC
>>109
あるよ[macro_name]
2021/07/08(木) 10:02:03.52ID:QRtgcIZD
イヤホンをジャックに差し込んでいる時でもスピーカーから音を出せるようにする

ってのはMacrodroidでは出来ない?
「スピーカーフォンのオンオフ」は通話時にしか使用出来ないらしく
メディア再生には適用されなかった。
2021/07/08(木) 10:42:15.25ID:ddAnmpPj
>>112
それはハンズフリー用だからメディアの再生とは違うね
システム設定のvolume_music_xxxxxを書き換えても出なければ出ないんじゃないかな
そのあたりいろいろ試してみて
2021/07/08(木) 15:57:32.79ID:H9uefP7F
>>111
ありがとう
定義済み変数(マジックテキスト?)は、アクション>機器の設定>システム設定>System>設定キーである程度わかるようだ
2021/07/08(木) 17:14:43.49ID:QRtgcIZD
>>113
ありがとう。調べてみます。
2021/07/08(木) 19:30:59.44ID:zKJ3OL8j
>>105だけど別泥デバイスにそのままMacroDroid移植したら
正常に動いた・・・やっぱ激安中華タブは
2021/07/08(木) 22:32:23.63ID:ddAnmpPj
>>114
ブラケット[]で表示されるものをマジックテキストて言ってる
普通に変数に代入するダイヤログに一覧出てくる
地味に整数型の方にも数値で取れるものが分散されてるけど主要なものは文字列型のほう
システム変数はアクションのダイヤログの方が現在値も表示されるからイメージしやすいね
2021/07/09(金) 06:43:17.19ID:f/eme3LD
ツインアプリで複製した同じアプリをマルチウィンドウで一発同時起動できるアプリとかありますか?
2021/07/09(金) 08:16:54.09ID:E7VEliQy
文字列AとBの一部の連続する4文字以上が被ってるってどう書くんですかね?(2つの文字列の変数に「朝日から染まる」と「朝日から昇る」みたいなのがそれぞれ入ったときに条件分岐させたいです)
2021/07/09(金) 09:15:36.52ID:aaDKi++F
>>119
4文字固定長でキーワードがあらかじめ決まってるなら簡単
総当たりループしてもしれてる
その例だと「朝日」以外に「夕日」と「星空」くらいしかなければAとBどころか数十文字が1000個くらいあっても許容できると思うよ

AとBの中から4文字「以上」の任意の不定長の文字列を探してAとB反対からそれぞれ見つけるのだとAやBの長さによっては現実的じゃないかも
1文字ずつ開始位置をシフトして4から1文字ずつお尻まで増やしつつ最後の文字の4文字手前まで繰り返しになるんで

そうやって機械的に抽出することに意味はないと思うからそういうことがやりたいんじゃないよね?
必要な要件を見直して人に伝えられるように言い換えられればできたも同然
2021/07/09(金) 14:59:58.23ID:E7VEliQy
>>119
>>120
不格好かもしれませんがやりたいことは出来ました!ありがとうございます!3枚目は1枚目のANDのところです。最初に言っていたAとBはそれぞれxとクリップボードのテキストです。結局長さ4文字固定でもokでした。本当にありがとうございました!

https://i.imgur.com/JZBdTuG.jpg
https://i.imgur.com/cniH44G.jpg
https://i.imgur.com/oX1HQWW.jpg
2021/07/09(金) 16:25:07.36ID:E7VEliQy
>>121
>>121
(あ、あとx1と判ってのは処理後の文字列を代入するための適当な変数です)
2021/07/09(金) 20:35:48.62ID:fyTQYpNP
アプリ起動をトリガーにしている↓マクロが一切反応しなくなりました。

トリガー
アプリ起動:アプリA
アプリ起動:アプリB,C,D
アクション
if アプリA起動
ボリューム100%
else if アプリB,C,D起動
ボリューム75%
endif

ログには何も記録がなくどうもアプリ起動トリガー自体が発火してないようです
アプリを色々変えたり、ユーザー補助on/off、端末再起動にMacrodroidの
再インストールもしてみたのですが変わりなし。

何か見逃してるところとか解決策はあるでしょうか?
2021/07/09(金) 21:07:14.83ID:aaDKi++F
>>121
あぁ4文字固定でいいのか
そしたらね

1. 文字列Aと文字列Bの長さを比較して短い方を「辞書」に採用
2. 辞書をスキャンして4文字分を先頭から最大値-3に達するまでシフトしながら抽出(今やってる内容と同様のループ処理)
3. ループ内で抽出した文字列が長い方の文字列に含まれるかチェックしてマッチすれば抜ける

これでループ回数が減ると思うよ
チェック文字列の長さを変数にすれば不定長でも対応できるね
その場合は抽出チェック用文字列の長さを4から始めてシフトしながら含まれるかチェックしていく(4のときは固定と同じ)
5,6,7...と増やして長い文字列の半分+1文字に達した時でチェックを打ち切っていいかな

抽出チェック用文字列を長→短でお尻の位置を1文字ずつ短くするのを先頭位置のみシフトってので繰り返すなり
反対に短→長でお尻の位置を1文字ずつ長くシフトしてってので繰り返すなり
こういうロジックの方が若干シンプルに書けるけどチェック用文字列が長くなるほどマッチする期待は下がるんでチェック用文字列が短い状態から1文字増やしては全ナメを繰り返した方が速そう
2021/07/09(金) 21:20:50.70ID:aaDKi++F
>>123
OPPOはダメって話題があったよ
やってみたらmacrodroidがフォアにいないとメディアボリュームが変更できなかった
OPPOじゃなくてもその類似で元々動いてなかったとか
あるいは>>102の着眼点のデフォがメディアボリュームになってないとか

アプリ起動は他がボリューム持っていく可能性を排除しきれないからメディア再生開始をトリガにした方がいいと思うけどね
アプリ個別ボリューム設定ができる機種ならなおさら
2021/07/09(金) 21:44:56.56ID:r2RTEvRm
うちのマクロも急に動かないものができて、変数使ったものがダメかと思ったら実はアプリ起動トリガーが問題か?
2021/07/09(金) 22:46:22.54ID:fyTQYpNP
>>125
機種はHuaweiなんですが、マクロ画面の「トリガーを試す」では
ちゃんとメディアボリュームが変更されたので、中華系の何かかもしれんですね

謎なのはMacrodoroidを初めてインストールして最初に作ったマクロなんですが、
その頃少しの期間はうまく動いてたんですよねえ

メディア再生をトリガーにして条件にフォアグランドアプリ指定で
しっかりボリューム変更されました。ありがとうございます
2021/07/09(金) 22:55:15.40ID:E7VEliQy
>>124
4文字以上被ってるのを単に探すだけなら4文字固定だけやれば十分なことに今気づきました…僕がアホでした…すいませんでした…

「よろしくお願いします」

「お願いします、初めまして」

だったら「よろしくお願いします」から「お願いし」を抽出してチェックすれば、「お願いしま」や「お願いします」を抽出して全部チェックする前に「お願いし」の時点でマッチしますもんね…でも長い方から抽出していくやつだと1番まとまった文字列の変数を手に入れれますね(この例だったら「お願いします」が手に入りますね)
あと分かんないとこがあって…

抽出チェック用文字列を長→短でお尻の位置を1文字ずつ短くするのを先頭位置のみシフトってので繰り返すなり
反対に短→長でお尻の位置を1文字ずつ長くシフトしてってので繰り返すなり

ってとこなんですけど、辞書が「お願いします」だったら
「お願いします」
「お願いしま」
「願いします」
「お願いし」
「願いしま」
「いします」
「いします」
「願いしま」
「お願いし」
「願いします」
「お願いしま」
「お願いします」
みたいに被りも出しつつ抽出するってことですか?すいません…あんまり詳しくなくて…
2021/07/10(土) 00:46:19.44ID:xPU9lixi
>>128
そういう話で合ってるよ
自分でもう答えを導いてると思うな

長いキーワードから見ていくと「お願いします」は手に入るけど「お願い」は手に入らないから処理を続けることになる
蓋然性として長くなればなるほと一致する期待は下がるから無駄が増える
A文字列150文字とB文字200文字だとしてAを抽出ソースとして採用するとして150文字から4文字に向かって始めてもまぁなかなかマッチしないじゃん?

これを1文字目から97文字目まで先頭をズラして抽出ってのを最後尾を1文字ずつ詰めながら文字列長が4文字になるまで94回繰り返すと抽出1ループあたり1回減るとしても無駄が1番大きい(一致が1回でいいならなおさら)
反対にお尻をズラして抽出文字列を長くしていく方が一致を探すだけなら随分マシだけど、先頭を1,2,3...文字目とズラして短い→長いを繰り返すと長くなるほどまぁ一致しなくなるからペナルティが大きいよね(全パターン試行なら回数は長→短と同じ)

だったら先頭も末尾も同時にズラして抽出文字列を4文字に固定してまずB文字列を全部調べて続いて5,6,7と固定長伸ばしてってのを繰り返し調べるほうが効率いいね
さっきのA150文字B200文字の例だとAの51番目を開始位置にした100文字のテストでBにマッチしなかったらAの1番目を開始位置にした101文字以降のテストはやらなくていいしね
自分で言ってる通りそれまでのテストで100文字未満で一致するパターンが出現してるはずだからそれより長いパターンが含まれるわけないんで
これでも最悪のケースで実際にはマッチするパターンがゼロになった時点で打ち切れる
2021/07/10(土) 02:34:38.50ID:a+ClYQRc
>>129
そうですね、150字被るなんて考えづらいですもんね。素人が分かるまでお付き合いいただいて感謝です!
2021/07/10(土) 02:37:24.35ID:1kYU78vC
マクロのテストではトリガー検知、アクション作動
実際の運用ではトリガー不認識つまり作動しない
もう疲れた。。。何が原因なのか?さっぱり

たとえはこんな簡単なマクロ
YouTubeを立ち上げた時
自動回転オン

他のマクロと競合してるのかと思い
バックアップ取りMacroDroid初期化し
上にあげたマクロ1個のみ作っても同じ症状

https://i.imgur.com/7cDsKDC.jpg
トリガー認識しないのは法則があり
アプリ起動時or終了時を選んだ時
強制的に旧式を選択してもダメ

MacroDroidのverは本日入れた最新
泥10Lenovo tab
2021/07/10(土) 02:38:18.70ID:1kYU78vC
ログをレスしようにも
トリガー認知しないのでログも生成されず。どなたか
2021/07/10(土) 03:01:11.13ID:xPU9lixi
>>129
そもそもこの話の核心は探したい文字列に意味があるかどうかは人間様、究極的に言えばマクロの使用者にしか分からないことなんだよ

もっと高級な外部の辞書、形態素解析なんかを使ったものやベイジアン、ニューラルネットワークを使ったものなんかだと大抵の人に意味がありそうな文字列を不定長、不定個数でもいい感じにピックアップしてくれるものがあると思う

でもどこまで行っても使用者のほしいキーワードが過不足なく得られるかは疑問だよね
なら対象にしたいデータサンプルを最初に数点見てその人個人の経験に基づく主観で思いつくまま欲しい検索ワードをキーワードリストに登録しといて適宜見直すってのが結局一番いいんじゃないかと思うよ
2021/07/10(土) 03:58:31.88ID:xPU9lixi
>>131
アプリ起動トリガがバグってるのかもしれないね
ためしてみたらウチもアプリ起動トリガ取れてない
アプリ起動てトリガに使ってないから気づかなかった
2021/07/10(土) 13:52:17.68ID:CJfAC83g
自分もアプリ起動・終了トリガーがうまく反応しなくなったけど、開発者サービスのアップデートのアンインストールで治りました
その後、再度降ってきた開発者サービスの最新版で正常に動いてます
不具合のあるバージョンがたまたま降ってきたのか、開発者サービスのキャッシュの問題なのかはよくわかりませんが…
2021/07/10(土) 16:12:35.02ID:kkH37yx1
Xiaomi Redmi 9TではGoogle Play開発者サービスの再インストールでも治らない
Xiaomi Redmi Note9Sなら動くのに
2021/07/10(土) 16:46:18.60ID:j4yMPaRE
相変わらずAndroid11のテザリングon/offにはまだ対応してないのかな?

カーナビ連携がうまく行かないや
2021/07/10(土) 16:54:09.73ID:kkH37yx1
試しにMacroDroidを5.14.1にダウンバージョンしてみたら普通にアプリ起動トリガーが
作動した、そのまま5.15.4にアップデートして再起動したら作動しない、以上の検証から
アップデートによる影響の可能性が濃厚だと思う
139名無しさん@お腹いっぱい。
垢版 |
2021/07/10(土) 19:22:02.51ID:JbVpaYTC
アクションの項目で画面のUIを連続してボタンを押し続けるアクションをするにはどうしたらいいのでしょうか?
やりたいこととしては、数分間同じ動作をし続けるか停止をするまで押し続けるみたいな事をやりたいです。
2021/07/10(土) 19:27:44.06ID:nyOHbuql
同じ場所でジェスチャーするんじゃなかったっけ?
2021/07/10(土) 19:30:50.81ID:kkH37yx1
>>139
条件分岐/繰り返し→条件で繰り返す
で出来るんじゃないかな?
■ このスレッドは過去ログ倉庫に格納されています
16歳の水野カイトが封印の刀を見つけ、時間が裂けて黒い風と亡霊の侍が現れ、霊の時雨と契約して呪われた刀の継承者となる場面

ニューススポーツなんでも実況