Android 安卓密码管理器应用程序如何工作?

Android 安卓密码管理器应用程序如何工作?,android,passwords,Android,Passwords,我在android上很少看到像lastpass这样的密码管理应用程序。 我也在尝试构建这种应用程序 这些应用程序是如何工作的 他们如何访问第三方应用程序的EditText和PasswordField? 他们如何检测登录屏幕? 此应用程序是否使用任何Android系统api 请给我一个提示。这是怎么回事 更新 我在网上找到了一个有用的。但是它没有说要使用哪种api 在搜索lot后,我得到了解决方案。可以使用访问第三方应用程序的EditText和PasswordField。我们可以使用Accessi

我在android上很少看到像lastpass这样的密码管理应用程序。 我也在尝试构建这种应用程序

这些应用程序是如何工作的

他们如何访问第三方应用程序的EditText和PasswordField?

他们如何检测登录屏幕?

此应用程序是否使用任何Android系统api

请给我一个提示。这是怎么回事

更新


我在网上找到了一个有用的。但是它没有说要使用哪种api

在搜索lot后,我得到了解决方案。可以使用访问第三方应用程序的EditText和PasswordField。我们可以使用
AccessibilityNodeInfo
AccessibilityNodeInfo.ACTION\u set\u TEXT
设置和获取EditText和PasswordField的值。我使用这个api完成了这件事。检测屏幕上正在运行的应用程序。您必须将此行
android:packageNames=“com.example”
放在
accessibility.xml
文件中

其中
com.example
是要触发可访问性服务的应用程序的包名

请阅读android.developer网站上与无障碍服务相关的文档

示例accessibility.xml

<?xml version="1.0" encoding="utf-8"?>
<accessibility-service xmlns:android="http://schemas.android.com/apk/res/android"
    android:accessibilityEventTypes="typeViewFocused|typeViewClicked"
    android:packageNames="com.example"
    android:accessibilityFeedbackType="feedbackAllMask"
    android:notificationTimeout="100"
    android:canRetrieveWindowContent="true"
    android:canRequestEnhancedWebAccessibility="true"/>