How To Call It
Navigation is a global table: call its functions with a dot (Navigation.<method>(...)), not a colon. Requires Macro Handler 1.0.54 or later.
Reads a saved setup as profileJson; edit it with JSON.parse. Returns ok/code, profileId and revision. Private calibration measurements are omitted.
Documented for app version 1.0.54 (not on Google Play yet)Updated:
Navigation is a global table: call its functions with a dot (Navigation.<method>(...)), not a colon. Requires Macro Handler 1.0.54 or later.
In automation flow, chain actions with short wait() intervals and use requestStop() or controlled retry on failure paths.
Required: profileId. Returns a Lua table.
It works best together with wait(), Point, SwipeParam, ClickParam, and sometimes a Region result.
The snippet below is a starter pattern that can be applied directly in runtime flow.
local r = Navigation.readProfile(profileId)
if r.ok then local profile = JSON.parse(r.profileJson); print(profile.label) endFrom foundation to combined usage, each level is provided as a separate code block so you can copy the level you need and adapt it directly.
local r = Navigation.readProfile(profileId)
if r.ok then local profile = JSON.parse(r.profileJson); print(profile.label) endlocal stepOk = true
local r = Navigation.readProfile(profileId)
if r.ok then local profile = JSON.parse(r.profileJson); print(profile.label) end
if stepOk then
wait(200)
endlocal ok, err = pcall(function()
local r = Navigation.readProfile(profileId)
if r.ok then local profile = JSON.parse(r.profileJson); print(profile.label) end
end)
if not ok then
print("API step failed: Navigation.readProfile: " .. tostring(err))
requestStop()
end-- In automation flow, chain actions with short wait() intervals and use requestStop() or controlled retry on failure paths.
local function run_readprofile_step()
local r = Navigation.readProfile(profileId)
if r.ok then local profile = JSON.parse(r.profileJson); print(profile.label) end
end
local ok, err = pcall(run_readprofile_step)
if not ok then
toast("Step failed")
print(err)
endlocal target = Point(540, 960)
quickTap(target)
wait(250)
local r = Navigation.readProfile(profileId)
if r.ok then local profile = JSON.parse(r.profileJson); print(profile.label) end
wait(250)
print("Automation chain completed")