背景
.mdr 匯入是 best-effort:MdrToFlowConverter 用一張對照表把 MacroDroid 的 class_type
字串轉成 NexFlow 的 ActionType。表上沒有的就會變成 UNSUPPORTED,並在匯入時列出警告。
NexFlow 有 34 種動作,對照表目前只覆蓋 25 種。這個 issue 要補三個單純 1 對 1的動作。
要做什麼
在 core/macrodroid-compat/src/main/kotlin/com/nexflow/core/macrodroid/MdrToFlowConverter.kt
的 ACTION_TYPE_MAP(約在 140 行)加上:
怎麼查 MacroDroid 的 class name
不要用猜的,實際去 .mdr 檔裡面找:
- 裝一份 MacroDroid,建立一個巨集,動作選「飛航模式」
- 從 MacroDroid 匯出
.mdr 檔
- 用文字編輯器打開(就是 JSON),在
action_list 裡找那個動作的 class_type 欄位
- 把看到的字串填進對照表
有現成的 .mdr 檔但沒有 MacroDroid 也可以 —— 只要那個檔案裡有這些動作即可。
驗收標準
- 對照表補上正確的 class name
- 在
core/macrodroid-compat/src/test/kotlin/.../MdrToFlowConverterTest.kt 加測試,
確認該 class type 轉出來的 type 是預期的 ActionType(不是 UNSUPPORTED)
./gradlew :core:macrodroid-compat:test 通過
- PR 說明附上你是從哪個
.mdr 檔看到這些 class name 的
注意
匯入後的設定欄位目前不會自動對應(MacroDroid 的 option key 跟 NexFlow 的不一樣),
那是另一個 issue 的範圍。這個 issue 只要做到「動作類型被正確識別、不再是 UNSUPPORTED」即可。
有問題歡迎在這串下面問,或到 Discussions 聊。
背景
.mdr匯入是 best-effort:MdrToFlowConverter用一張對照表把 MacroDroid 的class_type字串轉成 NexFlow 的
ActionType。表上沒有的就會變成UNSUPPORTED,並在匯入時列出警告。NexFlow 有 34 種動作,對照表目前只覆蓋 25 種。這個 issue 要補三個單純 1 對 1的動作。
要做什麼
在
core/macrodroid-compat/src/main/kotlin/com/nexflow/core/macrodroid/MdrToFlowConverter.kt的
ACTION_TYPE_MAP(約在 140 行)加上:AIRPLANE_TOGGLE— 飛航模式SET_WALLPAPER— 更換桌布SPEAKERPHONE— 擴音LAUNCH_SHORTCUT— 啟動 App 捷徑,如果 MacroDroid 有對應的動作怎麼查 MacroDroid 的 class name
不要用猜的,實際去
.mdr檔裡面找:.mdr檔action_list裡找那個動作的class_type欄位有現成的
.mdr檔但沒有 MacroDroid 也可以 —— 只要那個檔案裡有這些動作即可。驗收標準
core/macrodroid-compat/src/test/kotlin/.../MdrToFlowConverterTest.kt加測試,確認該 class type 轉出來的
type是預期的 ActionType(不是UNSUPPORTED)./gradlew :core:macrodroid-compat:test通過.mdr檔看到這些 class name 的注意
匯入後的設定欄位目前不會自動對應(MacroDroid 的 option key 跟 NexFlow 的不一樣),
那是另一個 issue 的範圍。這個 issue 只要做到「動作類型被正確識別、不再是 UNSUPPORTED」即可。
有問題歡迎在這串下面問,或到 Discussions 聊。