Joyin的账号 2025-10-24 17:37 采纳率: 0%
浏览 9

如何制作安卓密码管理软件的自动填充功能

我做了一个密码管理器,目前还差一个自动填充功能,我搜集了很多资料,做进去后发现都没有效果,不触发Autofill

  • 写回答

5条回答 默认 最新

  • 阿里嘎多学长 2025-10-24 17:52
    关注

    阿里嘎多学长整理AIGC生成,因移动端显示问题导致当前答案未能完全显示,请使用PC端查看更加详细的解答过程

    解决方案

    自动填充功能通常需要在AndroidManifest.xml中注册并配置AutoFillService。以下是核心步骤:

    1. 注册AutoFillService
    <application>
        ...
        <service
            android:name=".AutoFillService"
            android:enabled="true"
            android:exported="true"
            android:label="@string/app_name"
            android:permission="android.permission.BIND_AUTO_FILL_SERVICE">
            <intent-filter>
                <action android:name="android.service.autofill.AutofillService" />
            </intent-filter>
        </service>
        ...
    </application>
    
    1. 创建AutoFillService
    class AutoFillService : AutofillService() {
        override fun onAutofillRequest(request: AutofillRequest, session: AutofillSession): Boolean {
            // 自动填充逻辑
            // ...
            return true
        }
    }
    
    1. 配置AutoFillService
    class MainActivity : AppCompatActivity() {
        override fun onCreate(savedInstanceState: Bundle?) {
            super.onCreate(savedInstanceState)
            // ...
            AutofillManager.getInstance(this).addAutofillService(AutoFillService::class.java)
        }
    }
    
    1. 在密码管理器中使用AutoFillService
    class PasswordManager : AppCompatActivity() {
        override fun onCreate(savedInstanceState: Bundle?) {
            super.onCreate(savedInstanceState)
            // ...
            val autofillManager = AutofillManager.getInstance(this)
            val autofillService = autofillManager.getAutofillService(AutoFillService::class.java)
            // 使用AutoFillService进行自动填充
            autofillService?.onAutofillRequest(request, session)
        }
    }
    

    注意:上述代码仅为示例,具体实现可能需要根据实际需求进行调整。

    评论

报告相同问题?

问题事件

  • 创建了问题 10月24日