【发布时间】:2017-08-12 14:06:14
【问题描述】:
在用户输入错误密码 3 次后,我试图在锁定屏幕上显示 Toast。我能够通过日志控制台验证用户是否失败了 3 次,但希望在锁定屏幕上显示一些消息,以便用户知道。我在 DeviceAdminReceiver 中执行此操作。我可以在成功提交密码时祝酒,而不是失败。
import android.app.admin.DeviceAdminReceiver;
import android.app.admin.DevicePolicyManager;
import android.content.ComponentName;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
import android.widget.Toast;
public class AdminReceiver extends DeviceAdminReceiver {
@Override
public void onPasswordFailed(Context ctxt, Intent intent) {
Log.d("LockScreen", "onPasswordFailed");
DevicePolicyManager mgr = (DevicePolicyManager) ctxt.getSystemService(Context.DEVICE_POLICY_SERVICE);
int no = mgr.getCurrentFailedPasswordAttempts();
if (no >= 3) {
Log.d("LockScreen", "Failed 3 times");
//Toast does not show
Toast.makeText(ctxt, R.string.password_failed, Toast.LENGTH_LONG)
.show();
}
}
@Override
public void onPasswordSucceeded(Context ctxt, Intent intent) {
Toast.makeText(ctxt, R.string.password_success, Toast.LENGTH_LONG)
.show();
}
}
【问题讨论】:
标签: android lockscreen android-toast device-admin