ну что можно посоветовать ) собирай кучу данных, где то в базе данных, потом делай сортировки по выбранным переменным или что там у тебя, и ищи совпадения по 1 к 1 , по 2 к 2 и так далее, так то на самом деле логика не сложная
Вот у меня сейчас песца переколбасило после апдейта!.. Всё красное, даже стандарнтые классы. Никакой restart + invalidate + rebuild не помогал. Пришлось руками удалять все временные директории и файлы из проекта (.iml, .gradle, build и т.д.). Только это помогло.