alttester / alttester/AltTester-Unity-SDK

[POC] Platform specific input (from device)

未關閉
#1,125 1 則留言 0 個 reaction 已指派 1 人 已被 @gomboskriszta15 認領 在 GitHub 檢視
feature no version triaged
主要語言
C#
星號
121
分支
24
PR 合併指標
30 天內沒有已合併 PR

描述

## Description

Check if the `Click()` command can be implemented on the following platforms:

- [x] Windows
- [ ] Android
- [x] MacOS
- [ ] iOS
- [ ] Nintendo

## Mocks

## Additional info

On `Windows` we have to consider
- how to put an app in focus
- if there are multiple monitors, how do we handle clicking on coordinates?
- used dll. from https://github.com/michaelnoonan/inputsimulator

On `Android`
What I tried out
- 1. adb shell input tap x y - workable but adb needs to be installed by the user
- 2. searched for dll. that can be imported in Unity - found dll. from Xamarin but it is not compatible with Unity
- 3. Created .aar in Android Studio with Click() on the device and imported it in Unity but it does not have access to other libraries used for input (like uiautomator or others)
- 4. AccessibilityService - followed a tutorial, no conclusions yet

On `MacOS`
- use AppleScript
- you have to grant access to Script Editor before being able to click
- you can specify app/process that clicks

`ProcessStartInfo startInfo = new ProcessStartInfo()
{
UseShellExecute = true,
FileName = "osascript",
Arguments = "Click.scpt 1 1"
};`
`Process p = new Process{StartInfo=startInfo};
p.Start();`

`on run argv
tell application "System Events"
click at {item 1 of argv, item 2 of argv}
end tell
end run`

貢獻指南

開啟貢獻指南

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。