可以使用什么方法从自定义键盘写入文件?

时间:2015-06-28 21:57:12

标签: java android keyboard keylogger

目标:创建一个自定义键盘,将所有击键记录到本地日志文件

我现在已经有了一个可用的键盘 - 所以已经完成了。我已经验证了键盘本身可以在我的测试设备(Motorola Moto G,4.1,硬件)上运行。

问题在于:可以使用哪些方法将键击写入日志文件?

到目前为止,我的研究已经得出了这样的结论:密钥日志记录功能应该(至少部分地)进入软键盘主java文件的onKey方法。

我已经在onKey中添加了commitText和sendKeyEvent方法 - 这些是基本键盘功能所必需的。关于将键盘记录到日志文件中的方法的任何想法?

1 个答案:

答案 0 :(得分:0)

使用谷歌提供的关于写入文件的文档:

http://developer.android.com/training/basics/data-storage/files.html

示例代码:

String filename = "keystrokes.log";
String data = "ActualKeyStroke";
FileOutputStream outputStream;

try {
  outputStream = openFileOutput(filename, Context.MODE_PRIVATE);
  outputStream.write(data.getBytes());
  outputStream.close();
} catch (Exception e) {
  e.printStackTrace();
}

openFileOutput是来自Context class的方法,它是...的父级 InputMethodService (doc)