Android Сравнить шаблон блокировки экрана, взятый из 2 источников
Я работаю над приложением для Android, где я сохраняю шаблон блокировки. Пока пользователь вводит шаблон при включении питания на экране, я проверяю, совпадает ли он с сохраненным шаблоном.
Я сохраняю шаблон в приложении, используя: https://github.com/haibison/android-lockpattern/
Проблема в том, что оба имеют разные форматы:
1) объект lockpattern, захваченный при включении экрана:
[(row=1,clmn=0), (row=0,clmn=1), (row=1,clmn=1), (row=2,clmn=1), (row=1,clmn=2)]
2) И вот этот снимок я делаю по методу Хайбисона:
char[] pattern = data.getCharArrayExtra(LockPatternActivity.EXTRA_PATTERN);
String lockpattern = new String(pattern);
Можете ли вы предоставить несколько примеров / ссылок.
Я не должен использовать метод Haibison?
1 ответ
Вы должны установить Encrypter перед запуском Lockpattern-Intent, чтобы получить правильное представление из char-массива haibison, например LPEncrypter ( https://bitbucket.org/haibison/android-lockpattern/wiki/Encryption):
AlpSettings.Security.setEncrypterClass(context, LPEncrypter.class);
Например, простое представление для этого шаблона:
Массив Habisons без Encrypter выглядит следующим образом:
[3,9,7,7,c,9,3,7,e,c,e,a,5,6,2,4,0,e,a,7,3,9,3,4,b,8,e,9,a,c,9,7,6,6,e,8,e,8,d,0]
использование Example-Encrypter с String[] ids = new String(pattern).split("[^0-9]");
ты получишь [1,-,2,-,3,-,6]
который должен быть легко преобразован в ваше представление lockpattern.