我创建了示例应用程序,它将启动Message app,然后使用KEY_1
Tizen::Ui::SystemUtil::GenerateKeyEvent().
以下是代码段:
String strAppName = L"tizen.messages";
result r;
Tizen::App::AppControl* pAc = AppManager::FindAppControlN(strAppName, L"http://tizen.org/appcontrol/operation/compose");
if (pAc)
{
r = pAc->Start(null, null, null, null);
delete pAc;
}
AppLog("Application launch status : [%s]", GetErrorMessage(r));
sleep(2);
Tizen::Ui::KeyCode keyToSimulate = Tizen::Ui::KEY_1;
r = Tizen::Ui::SystemUtil::GenerateKeyEvent(Tizen::Ui::KEY_EVENT_TYPE_PRESSED, keyToSimulate);
AppLog("KEY_EVENT_TYPE_PRESSED [%d] and result :: %s", keyToSimulate, GetErrorMessage(r));
r = Tizen::Ui::SystemUtil::GenerateKeyEvent(Tizen::Ui::KEY_EVENT_TYPE_RELEASED, keyToSimulate);
AppLog("KEY_EVENT_TYPE_RELEASED [%d] and result :: %s", keyToSimulate, GetErrorMessage(r));
应用程序成功启动,按下并释放GenerateKeyEvent的结果为E_SUCCESS
。消息应用程序中未打印'1'值。
请帮我模拟按键。
谢谢,
阿尼尔。
答案 0 :(得分:0)
可能不是这样做的,您应该将数据传递到pAc->Start
参数内的消息应用程序。这就是tizen
app的正常运作方式,你没有定义模拟keyEvent的位置。You dont have control over other App to simulate an event on it
。您可以在参数中定义要在IList
或HashMap
内传递的数据,祝你好运