MaaFramework
A automation black-box testing framework based on image recognition.
Loading...
Searching...
No Matches
MaaController.h File Reference

The controller interface. See MaaControllerPostRequest for details on how to post requests to the controller. More...

#include "../MaaDef.h"
#include "../MaaPort.h"

Go to the source code of this file.

Typedefs

typedef struct MaaCustomControllerCallbacks MaaCustomControllerCallbacks
 

Functions

MAA_FRAMEWORK_API MaaControllerMaaAdbControllerCreate (const char *adb_path, const char *address, MaaAdbScreencapMethod screencap_methods, MaaAdbInputMethod input_methods, const char *config, const char *agent_path)
 
MAA_FRAMEWORK_API MaaControllerMaaWin32ControllerCreate (void *hWnd, MaaWin32ScreencapMethod screencap_method, MaaWin32InputMethod mouse_method, MaaWin32InputMethod keyboard_method)
 
MAA_FRAMEWORK_API MaaControllerMaaCustomControllerCreate (MaaCustomControllerCallbacks *controller, void *controller_arg)
 
MAA_FRAMEWORK_API MaaControllerMaaDbgControllerCreate (const char *read_path, const char *write_path, MaaDbgControllerType type, const char *config)
 
MAA_FRAMEWORK_API void MaaControllerDestroy (MaaController *ctrl)
 
MAA_FRAMEWORK_API MaaSinkId MaaControllerAddSink (MaaController *ctrl, MaaEventCallback sink, void *trans_arg)
 
MAA_FRAMEWORK_API void MaaControllerRemoveSink (MaaController *ctrl, MaaSinkId sink_id)
 
MAA_FRAMEWORK_API void MaaControllerClearSinks (MaaController *ctrl)
 
MAA_FRAMEWORK_API MaaBool MaaControllerSetOption (MaaController *ctrl, MaaCtrlOption key, MaaOptionValue value, MaaOptionValueSize val_size)
 
MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostConnection (MaaController *ctrl)
 
MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostClick (MaaController *ctrl, int32_t x, int32_t y)
 
MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostSwipe (MaaController *ctrl, int32_t x1, int32_t y1, int32_t x2, int32_t y2, int32_t duration)
 
MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostClickKey (MaaController *ctrl, int32_t keycode)
 
MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostInputText (MaaController *ctrl, const char *text)
 
MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostStartApp (MaaController *ctrl, const char *intent)
 
MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostStopApp (MaaController *ctrl, const char *intent)
 
MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostTouchDown (MaaController *ctrl, int32_t contact, int32_t x, int32_t y, int32_t pressure)
 
MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostTouchMove (MaaController *ctrl, int32_t contact, int32_t x, int32_t y, int32_t pressure)
 
MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostTouchUp (MaaController *ctrl, int32_t contact)
 
MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostKeyDown (MaaController *ctrl, int32_t keycode)
 
MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostKeyUp (MaaController *ctrl, int32_t keycode)
 
MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostScreencap (MaaController *ctrl)
 
MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostScroll (MaaController *ctrl, int32_t dx, int32_t dy)
 Post a scroll action to the controller.
 
MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostShell (MaaController *ctrl, const char *cmd, int64_t timeout)
 Post a shell command to the controller.
 
MAA_FRAMEWORK_API MaaBool MaaControllerGetShellOutput (const MaaController *ctrl, MaaStringBuffer *buffer)
 Get the cached shell command output.
 
MAA_FRAMEWORK_API MaaStatus MaaControllerStatus (const MaaController *ctrl, MaaCtrlId id)
 
MAA_FRAMEWORK_API MaaStatus MaaControllerWait (const MaaController *ctrl, MaaCtrlId id)
 
MAA_FRAMEWORK_API MaaBool MaaControllerConnected (const MaaController *ctrl)
 
MAA_FRAMEWORK_API MaaBool MaaControllerCachedImage (const MaaController *ctrl, MaaImageBuffer *buffer)
 
MAA_FRAMEWORK_API MaaBool MaaControllerGetUuid (MaaController *ctrl, MaaStringBuffer *buffer)
 
MAA_DEPRECATED MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostPressKey (MaaController *ctrl, int32_t keycode)
 

Detailed Description

The controller interface. See MaaControllerPostRequest for details on how to post requests to the controller.

Author

Typedef Documentation

◆ MaaCustomControllerCallbacks

Function Documentation

◆ MaaAdbControllerCreate()

MAA_FRAMEWORK_API MaaController * MaaAdbControllerCreate ( const char *  adb_path,
const char *  address,
MaaAdbScreencapMethod  screencap_methods,
MaaAdbInputMethod  input_methods,
const char *  config,
const char *  agent_path 
)

◆ MaaWin32ControllerCreate()

MAA_FRAMEWORK_API MaaController * MaaWin32ControllerCreate ( void *  hWnd,
MaaWin32ScreencapMethod  screencap_method,
MaaWin32InputMethod  mouse_method,
MaaWin32InputMethod  keyboard_method 
)

◆ MaaCustomControllerCreate()

MAA_FRAMEWORK_API MaaController * MaaCustomControllerCreate ( MaaCustomControllerCallbacks controller,
void *  controller_arg 
)

◆ MaaDbgControllerCreate()

MAA_FRAMEWORK_API MaaController * MaaDbgControllerCreate ( const char *  read_path,
const char *  write_path,
MaaDbgControllerType  type,
const char *  config 
)

◆ MaaControllerDestroy()

MAA_FRAMEWORK_API void MaaControllerDestroy ( MaaController ctrl)

◆ MaaControllerAddSink()

MAA_FRAMEWORK_API MaaSinkId MaaControllerAddSink ( MaaController ctrl,
MaaEventCallback  sink,
void *  trans_arg 
)

◆ MaaControllerRemoveSink()

MAA_FRAMEWORK_API void MaaControllerRemoveSink ( MaaController ctrl,
MaaSinkId  sink_id 
)

◆ MaaControllerClearSinks()

MAA_FRAMEWORK_API void MaaControllerClearSinks ( MaaController ctrl)

◆ MaaControllerSetOption()

MAA_FRAMEWORK_API MaaBool MaaControllerSetOption ( MaaController ctrl,
MaaCtrlOption  key,
MaaOptionValue  value,
MaaOptionValueSize  val_size 
)
Parameters
[in]value
Parameters
valuebyte array, int*, char*, bool*

◆ MaaControllerPostConnection()

MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostConnection ( MaaController ctrl)

◆ MaaControllerPostClick()

MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostClick ( MaaController ctrl,
int32_t  x,
int32_t  y 
)

◆ MaaControllerPostSwipe()

MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostSwipe ( MaaController ctrl,
int32_t  x1,
int32_t  y1,
int32_t  x2,
int32_t  y2,
int32_t  duration 
)

◆ MaaControllerPostClickKey()

MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostClickKey ( MaaController ctrl,
int32_t  keycode 
)

◆ MaaControllerPostInputText()

MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostInputText ( MaaController ctrl,
const char *  text 
)

◆ MaaControllerPostStartApp()

MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostStartApp ( MaaController ctrl,
const char *  intent 
)

◆ MaaControllerPostStopApp()

MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostStopApp ( MaaController ctrl,
const char *  intent 
)

◆ MaaControllerPostTouchDown()

MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostTouchDown ( MaaController ctrl,
int32_t  contact,
int32_t  x,
int32_t  y,
int32_t  pressure 
)

◆ MaaControllerPostTouchMove()

MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostTouchMove ( MaaController ctrl,
int32_t  contact,
int32_t  x,
int32_t  y,
int32_t  pressure 
)

◆ MaaControllerPostTouchUp()

MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostTouchUp ( MaaController ctrl,
int32_t  contact 
)

◆ MaaControllerPostKeyDown()

MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostKeyDown ( MaaController ctrl,
int32_t  keycode 
)

◆ MaaControllerPostKeyUp()

MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostKeyUp ( MaaController ctrl,
int32_t  keycode 
)

◆ MaaControllerPostScreencap()

MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostScreencap ( MaaController ctrl)

◆ MaaControllerPostScroll()

MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostScroll ( MaaController ctrl,
int32_t  dx,
int32_t  dy 
)

Post a scroll action to the controller.

Parameters
ctrlThe controller handle.
dxThe horizontal scroll delta. Positive values scroll right, negative values scroll left.
dyThe vertical scroll delta. Positive values scroll down, negative values scroll up.
Returns
The control id of the scroll action.
Note
Not all controllers support scroll. If not supported, the action will fail.

◆ MaaControllerPostShell()

MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostShell ( MaaController ctrl,
const char *  cmd,
int64_t  timeout 
)

Post a shell command to the controller.

Parameters
ctrlThe controller handle.
cmdThe shell command to execute.
timeoutTimeout in milliseconds. Default is 20000 (20 seconds).
Returns
The control id of the shell action.
Note
This is only valid for ADB controllers. If the controller is not an ADB controller, the action will fail.
See also
MaaControllerGetShellOutput

◆ MaaControllerGetShellOutput()

MAA_FRAMEWORK_API MaaBool MaaControllerGetShellOutput ( const MaaController ctrl,
MaaStringBuffer buffer 
)

Get the cached shell command output.

Parameters
ctrlThe controller handle.
bufferThe output buffer to store the command result.
Returns
true if the output is available, false otherwise.
Note
This returns the output from the most recent shell command execution.

◆ MaaControllerStatus()

MAA_FRAMEWORK_API MaaStatus MaaControllerStatus ( const MaaController ctrl,
MaaCtrlId  id 
)

◆ MaaControllerWait()

MAA_FRAMEWORK_API MaaStatus MaaControllerWait ( const MaaController ctrl,
MaaCtrlId  id 
)

◆ MaaControllerConnected()

MAA_FRAMEWORK_API MaaBool MaaControllerConnected ( const MaaController ctrl)

◆ MaaControllerCachedImage()

MAA_FRAMEWORK_API MaaBool MaaControllerCachedImage ( const MaaController ctrl,
MaaImageBuffer buffer 
)

◆ MaaControllerGetUuid()

MAA_FRAMEWORK_API MaaBool MaaControllerGetUuid ( MaaController ctrl,
MaaStringBuffer buffer 
)

◆ MaaControllerPostPressKey()

MAA_DEPRECATED MAA_FRAMEWORK_API MaaCtrlId MaaControllerPostPressKey ( MaaController ctrl,
int32_t  keycode 
)