- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我将其发送给 KennyTM(在 GitHub 上有所有私有(private)框架 header ),但我想我也应该在这里问,以防万一有人有一些好的想法或任何方法来帮助我。
我正在尝试编写一个命令行实用程序,用于发送 GSEvent 来操作键盘、触摸/拖动屏幕上的元素以及操作硬件按钮(音量、主页、 sleep 等)
我捕获了 MouseSupport 代码并尝试查看它,但我找不到发送 GSEvents 的最简单方法。我希望这里有人可以帮助我。
首先,声明 GSEvent 并发送它的最简单方法是什么?我查看了 iPhone 开发 wiki,但文档非常模糊。我知道我必须将这些事件发送到一个紫色事件端口(?),但我不明白该怎么做。有人可以提供一些示例,例如触摸坐标、键入某个键或按下硬件按钮吗?
另外,如果我希望这个实用程序能够像 Springboard 一样操作所有应用程序,我是否必须编写或执行任何特殊操作?我不知道这是否是一个特殊情况,因为我希望它在操作系统级别。理想情况下,我会通过 SSH 连接到手机,启动程序,然后它将发送 GSEvent,这些事件将由打开的任何应用程序处理。
至于编译这段代码,在Xcode下有什么办法吗?我不知道应该使用哪种项目模板(如果有的话),这让我很失望。我不需要“构建并运行”支持,我非常乐意将程序发送到电话上。据我了解,在手机上编译代码也是可行的。我的手机上有 SDK 中的所有 header 以及 iphone-gcc,但是在编译一些测试程序时,我仍然收到有关找不到 mach header 和 CoreFoundation 的错误。有没有更简单的方法来做到这一点?
最后,是否还有其他指南或文献可供我引用以了解更多相关信息?我很高兴能够参与开放式 iPhone 开发(我有使用官方 SDK 的经验,但我想更深入)。
感谢人们提供的所有帮助!
最佳答案
First, what's the simplest way to declare a GSEvent and send it?
这取决于 GSEvent 的类型。有些事件具有方便的功能,可以一步创建和发送,例如GSEventLockDevice()
。但HID事件(触摸、按键等)不具备这些简单的功能。原因可能是因为 GSEventLockDevice()
等将从应用程序发送到 SpringBoard,但 HID 事件从 SpringBoard 发送到应用程序。因此,只有SpringBoard团队需要知道如何构造一个复杂的GSEvent。
无论如何,要创建 HID 事件(例如加速度计事件),您不需要创建 GSEvent。只需使用GSSendEvent()
:
// (not tested.)
GSAccelerometerInfo accel = {0.0f, 0.0f, 1.0f};
GSEventRecord header;
memset(&header, 0, sizeof(header));
header.type = kGSEventAccelerate;
header.infoSize = sizeof(accel);
header.timestamp = mach_absolute_time();
// fill in other members.
struct {
GSEventRecord record;
GSAccelerometerInfo info;
} record = {header, accel};
// ... see below ...
GSSendEvent(&record, thePortOfApp);
但是什么是“应用程序端口”?不幸的是没有函数可以实现这一点。从 3.1 开始,mach 端口的名称与其捆绑 ID 相同,因此您可以使用:
mach_port_t thePortOfApp = GSCopyPurpleNamedPort("com.unknown.appBundleID");
...
mach_port_deallocate(mach_task_self(), thePortOfApp); // remember to release the port.
<小时/>
Also, do I have to write or do anything special if I want this utility to operate all applications as well as Springboard?
据我所知,没有。
<小时/>对于另外两个问题,您可能应该将它们分成单独的问题。
关于iphone - 使用 GraphicsServices.h/GSEvent 以及使用 Xcode 编译 CLI iPhone 工具,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3017367/
我在全局范围内安装了最新的 angular-cli,并且我的项目正在成功构建。 在阅读另一个问题的建议解决方案时,(https://github.com/angular/angular-cli/iss
根据official docs关于 .angular-cli.json 配置文件,仅支持 main、test、polyfills 作为 webpack 入口文件。 如何通过定义 .angular-cl
我想在s3存储桶中搜索文件名abc.zip,并且有将近60个存储桶,每个存储桶都有2到3个级别的子目录或文件夹。我尝试使用AWS CLI命令执行搜索,以下是我尝试过的命令,但即使文件存在于存储桶中,也
我正在尝试在 C++/CLI 中查找赋值运算符和复制构造函数的示例。我在 Google 上花了很多时间,但令人惊讶的是我找不到一个看起来很常见的例子。 最佳答案 .NET 语义没有复制构造函数或赋值运
我需要获取另一个窗口的句柄。 这是它的代码: private: System::Void btn_find_Click(System::Object^ sender, System::EventAr
有点好奇实际上有多少人使用 C++/CLI?那么有多少人在使用它呢?人们是否只在托管环境下寻找程序员的特定工作?围绕 c++/cli 的社区有多大?从我目前看到的情况来看,有不少语法变化,作为 C++
我正在阅读一些 C++/CLI Material ,并且遇到了文字字段的概念: literal int inchesPerFoot = 12; 这是否比 const 更可取,因为 const FIEL
通过 npm install -g angular-cli@latest 安装 Angular CLI (angular-cli@1.0.0-beta.16) 失败,出现以下错误 npm-debug.
我正在尝试在我的 Ember CLI 应用程序中配置适配器以根据环境使用不同的主机。在开发中,我希望它是默认的当前主机(让我通过 --proxy 选项自定义它,但在生产中我知道它将是 http://s
我最近开始使用 Angular/CLI 工具,我在执行文件时遇到了一个问题,那就是我运行时 ng serve 那么这个命令可以帮助我们在源文件中进行任何更改时自动重新加载站点,但在我的系统中它没有发生
是否有推荐的方法通过 c++ cli 包装 native c++ 库? 最佳答案 不确定是否一种尺寸适合所有人,但是,是的,这很大程度上是一个机械过程。您的 ref 类包装器应该声明一个私有(priv
我有一个关于为要在 C# 中使用的 native C++ 类创建 C++ CLI 包装器的问题。 这是一个示例代码: #include "stdafx.h" #pragma once using na
下面的代码打印 0 和 3。这是代码生成错误吗?我在 .NET 4.0 下使用 Visual Studio 2012 Update 3 RC 运行它 #include "stdafx.h" using
它是如何工作的?它是否有不同的部分 - 有些方法是托管的,有些是非托管的,它是否将每个方法都转换为托管的,试图保持所有东西都处于托管状态并在必须时进行互操作调用? 最佳答案 三种不同的compiler
如果我没记错的话,函数必须是 CLR 世界中类的成员,而全局函数在 C++/CLI 中是可能的。这是否意味着这些全局函数是某种隐藏的“全局”类的一部分?如果是这样,出于反射目的,人们将如何获取其类型?
如何在 Angular 中重建我的项目。我首先使用 ng build 构建它,但无法再次执行该命令,因为它不会让我更改文件夹。 我收到此错误消息: EPERM:不允许操作,lstat 是否有另一个命令
我遇到了两个相互引用的类的问题。我曾尝试使用接口(interface)来解决问题,但遇到了其他问题,例如类重新定义。我只是不确定如何正确执行此操作。 这是我正在做的事情的一个例子。注意:我已经去掉了所
我是 React.js 的新手,我正在尝试从 tutorialspoint 上的教程中学习但我遇到了错误。这是我执行 npm start 命令时控制台上的错误: C:\Users\HP\Desktop
我正在尝试将我的 angular cli 和 angular core 从 12 升级到 13,但看起来存在对等依赖性问题。有人遇到过这个问题吗? npx @angular/cli@13 update
我正在我的 ubuntu 上安装 influxdb_2.0.9,我按照这里的说明操作: https://docs.influxdata.com/influxdb/v2.0/install/?t=Lin
我是一名优秀的程序员,十分优秀!