我想知道是否可以截取iPhone或iPad屏幕上显示的所有文字。我们希望收集移动设备上使用的所有常用字词。 如果有人可以提供帮助,请告诉我。
答案 0 :(得分:2)
不,这是不可能的。在iOS,WebKit和Core Text中绘制文本有两种主要方式。你需要劫持这些调用(在WebKit的情况下,劫持其内部数据结构)。即使在你自己的程序中也没有实际的方法来攻击它(更不用说尝试在系统级别进行攻击)。我甚至不相信在越狱装置上有一种实用的方法来攻击它。
我在想象这些信息的实际用例时遇到了一些困难,但如果它足够有价值,我会聘请某人手工截取屏幕并OCR。
答案 1 :(得分:0)
我不确定我理解你的问题。你的意思是每个应用程序上显示的文字? 答案是否定的。
如果您想阅读您自己的应用中的每个UILabel
文字,您可以递归浏览视图层次结构并检测每个UILabel
。例如:
- (void)printLabelTextsRecursive:(UIView *)view {
if ([view isKindOfClass:[UILabel class]]) {
NSLog(@"Label: %@", ((UILabel *)(view)).text)
} else {
for (UIView *subView in view.subViews) {
[self printLabelTextsRecursive:subView];
}
}
}
并使用UIWindow
类中的AppDelegate
进行调用,例如:
[self printLabelTextsRecursive:self.window];
答案 2 :(得分:0)
嗯,没有办法为未破解的iphone做到这一点,因为每个应用程序都是在自己的沙盒中启动的。应用无法相互通信。
对于越狱的iphone,可能有办法。只想到苹果的声音 - 它会读取用户触摸的所有内容。所以必须有办法。什么可能对你有所帮助: