溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

AWTK輸入事件記錄與重放的方法是什么

發(fā)布時間:2021-12-29 13:58:28 來源:億速云 閱讀:247 作者:iii 欄目:互聯網科技

本篇內容主要講解“AWTK輸入事件記錄與重放的方法是什么”,感興趣的朋友不妨來看看。本文介紹的方法操作簡單快捷,實用性強。下面就讓小編來帶大家學習“AWTK輸入事件記錄與重放的方法是什么”吧!

輸入事件記錄與重放

1. 用途

輸入事件記錄與重放的常見用途有:

  • 自動演示功能。

  • 長時間運行進行壓力測試。

  • 輔助手工測試。有時出現崩潰的 BUG 時,往往忘記之前是如何操作的了,輸入事件記錄與重放可以精確重現問題。同時也可以減輕手工測試的工作量。

2.API

/**
 * @method event_recorder_player_start_record
 * 開始事件記錄。
 * @annotation ["static"]
 * @param {const char*} filename 用于保存事件的文件名。
 *
 * @return {ret_t} 返回 RET_OK 表示成功,否則表示失敗。
 */
ret_t event_recorder_player_start_record(const char* filename);

/**
 * @method event_recorder_player_start_play
 * 開始事件重放。
 * @annotation ["static"]
 * @param {const char*} filename 存放事件的文件名。
 * @param {uint32_t} times 循環(huán)播放的次數。
 *
 * @return {ret_t} 返回 RET_OK 表示成功,否則表示失敗。
 */
ret_t event_recorder_player_start_play(const char* filename, uint32_t times);

/**
 * @method event_recorder_player_stop_record
 * 停止事件記錄。
 * @annotation ["static"]
 *
 * @return {ret_t} 返回 RET_OK 表示成功,否則表示失敗。
 */
ret_t event_recorder_player_stop_record(void);

/**
 * @method event_recorder_player_stop_play
 * 停止事件重放。
 * @annotation ["static"]
 *
 * @return {ret_t} 返回 RET_OK 表示成功,否則表示失敗。
 */
ret_t event_recorder_player_stop_play(void);

3. 用法

一般有兩種方式啟用輸入事件記錄與重放:

  • 通過命令行參數啟動記錄或重放功能(目前沒有提供示例)。

  • 通過快捷鍵啟動記錄和重放功能。這種方法更為靈活,可以隨時啟用和停止,可以隨時記錄和播放。

要定義宏 WITH|_EVENT_RECORDER_PLAYER 才能啟用事件記錄與重放功能,PC 版本缺省是定義了該宏的。

demoui 中演示了通過快捷鍵啟動記錄和重放功能:

#include "base/event_recorder_player.h"
...

static ret_t on_key_record_play_events(void* ctx, event_t* e) {
  key_event_t* evt = (key_event_t*)e;

#ifdef WITH_EVENT_RECORDER_PLAYER
  if (evt->key == TK_KEY_F5) {
    event_recorder_player_start_record("event_log.bin");
    return RET_STOP;
  } else if (evt->key == TK_KEY_F6) {
    event_recorder_player_stop_record();
    return RET_STOP;
  } else if (evt->key == TK_KEY_F7) {
    event_recorder_player_start_play("event_log.bin", 0xffff);
    return RET_STOP;
  } else if (evt->key == TK_KEY_F8) {
    event_recorder_player_stop_play();
    return RET_STOP;
  }
#endif /*WITH_EVENT_RECORDER_PLAYER*/

  return RET_OK;
}

...

widget_on(wm, EVT_KEY_UP, on_key_record_play_events, wm);

在以上代碼中:

  • F5 鍵開始記錄。

  • F6 鍵停止記錄。

  • F7 鍵開始播放。

  • F8 鍵停止播放。

4.已知問題

  • 如果想重復播放記錄的事件,確保記錄事件時,回到初始界面后才停止記錄。

  • 目前平臺原生輸入法的輸入事件沒有記錄。

到此,相信大家對“AWTK輸入事件記錄與重放的方法是什么”有了更深的了解,不妨來實際操作一番吧!這里是億速云網站,更多相關內容可以進入相關頻道進行查詢,關注我們,繼續(xù)學習!

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI