是否可以用Java编写一个在托盘中运行的应用程序,并且当启动某个应用程序时,它可以检测到它?我想对某些程序执行此操作,以了解我每周使用它们多长时间。我是 Java 新手,所以我不知道 Java 是否是最适合此操作的语言,或者它是否具有对操作系统的正确访问权限来执行此操作。
Java 本身并没有太多集成到特定于系统的功能(大多数其他通用语言也没有)。如果您谈论的是 Windows,则选择的系统语言将是 C#(或 C/C++)。在 Mac 上,它是 ObjectiveC(或 C/C++)。在linux上,它是C。
要访问给定系统上的进程监控设施,您需要首先了解将要使用的 API。然后,您可以评估给定语言是否具有对这些 API 的内置或第三方库支持。
对于 Java,您需要编写一些JNI http://docs.oracle.com/javase/1.5.0/docs/guide/jni/spec/jniTOC.html(C 代码),使用JNA https://github.com/twall/jna/(仅限 Java),或解析以下输出运行时.exec() http://docs.oracle.com/javase/6/docs/api/java/lang/Runtime.html#exec%28java.lang.String%5B%5D%29(调用各种系统/shell 命令)访问与管理和/或监视进程相关的系统 API。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)