Size: a a a

StartAndroid Ru Chat

2020 May 04

СП

Сергей П. in StartAndroid Ru Chat
SMOOG
Ребята, привет.

В разных версиях андроида используется разный доступ к определенным функциям. Например код с 3.3 не работает на 4.0 (OnClickListener)

Меня, как абсолютного новичка в этой сфере беспокоит этот вопрос. Каким образом я могу облегчить себе жизнь с неактуальными туториалами и участками кода?
Забить на все что моложе 4.4 (19 api)
источник

S

SMOOG in StartAndroid Ru Chat
Сергей П.
Забить на все что моложе 4.4 (19 api)
Ну а если туториал на 3.3
источник

СП

Сергей П. in StartAndroid Ru Chat
SMOOG
Ну а если туториал на 3.3
Искать другой.
источник

S

SMOOG in StartAndroid Ru Chat
После 4.4 таких изменений меньше?
источник

AK

Almaz Kh in StartAndroid Ru Chat
Galadriel
Пишешь свой буфер(или расширяешь дефолтный), читаешь строку, хешируешь её, кладёшь в мапу
Out of memory exeption фигачит таким способом
источник

AK

Almaz Kh in StartAndroid Ru Chat
Сергей П.
Собеседование куда? На джуна?
Да
источник

СП

Сергей П. in StartAndroid Ru Chat
SMOOG
После 4.4 таких изменений меньше?
Парк таких устройств перенебрежимо мал и о том что там было иначе думать не надо.
источник

G

Galadriel in StartAndroid Ru Chat
Almaz Kh
Длина на строки неизвестна.
Э, что тогда делать....
источник

G

Galadriel in StartAndroid Ru Chat
Если строка не помещается в память, значит мы можем работать только с её кусками. Мб сделать хеш
источник

G

Galadriel in StartAndroid Ru Chat
Точно, полиномиальный хеш. Так мы сможем всю строку записать даже имея только куски
источник

G

Galadriel in StartAndroid Ru Chat
Я прав?
источник

СП

Сергей П. in StartAndroid Ru Chat
В смысле длина строки неизвестна? Если именно конкретеая строка такой длины что не лезет в память, скажем от 50 млн символов - то ее придется просто по кускам хэшфункции сравнивать.
источник

AK

Almaz Kh in StartAndroid Ru Chat
Сергей П.
В смысле длина строки неизвестна? Если именно конкретеая строка такой длины что не лезет в память, скажем от 50 млн символов - то ее придется просто по кускам хэшфункции сравнивать.
Не не
источник

СП

Сергей П. in StartAndroid Ru Chat
Кстати, сильно ускорить процесс можно из допущения что строки разной  длины заведомо неравны. Если они разные, конечно. Длина считывается быстрее чем полный хэш от охуллионов байтов.
Но это уже оптимизации пошли
источник

AK

Almaz Kh in StartAndroid Ru Chat
Смысл такой , известно что на каждой строке находится ip адрес. Но точно из скольки символов каждая строка ( то есть каждая линия файла) не известно
источник

G

Galadriel in StartAndroid Ru Chat
Сергей П.
Кстати, сильно ускорить процесс можно из допущения что строки разной  длины заведомо неравны. Если они разные, конечно. Длина считывается быстрее чем полный хэш от охуллионов байтов.
Но это уже оптимизации пошли
Ну логично, но такого условия нет)
источник

СП

Сергей П. in StartAndroid Ru Chat
Тогда пофигу, все в один проход как выше писали
источник

СП

Сергей П. in StartAndroid Ru Chat
Но итоговая map должна влезать в память, если делать через нее
источник

AK

Almaz Kh in StartAndroid Ru Chat
Сергей П.
В смысле длина строки неизвестна? Если именно конкретеая строка такой длины что не лезет в память, скажем от 50 млн символов - то ее придется просто по кускам хэшфункции сравнивать.
А как реализовать по кускам сравнение в хэш функции . Вообще мне по итогам нужно количество уникальных значений в файле)
источник

G

Galadriel in StartAndroid Ru Chat
Ты хочешь в мап закидывать захешированную строку? Но ты её считать не можешь, так как она в память не залазит
источник