Код: Выделить всё
String [] mDefinitions = getResources().getStringArray(R.array.definition_array);
Верните массив строк, связанный с определенным идентификатором ресурса.
Этот подход работал, как и ожидалось, для небольших данных. наборы. Однако когда я заполнил strings.xml полным набором данных (около 2000 записей), я обнаружил, что приложение аварийно завершилось при попытке загрузить ресурс. Я заметил эту ошибку в журнале консоли:
Переполнение таблицы ссылок (max=512)
Поиграв с количеством элементов в моем массиве строк, я подтвердил, что ошибка воспроизводится, когда количество элементов превышает ~700 записей.
Погуглив проблему, удалось найти несколько примеров того, как другие разработчики столкнулись с такой же проблемой, но я не могу найти в документации Android ничего, что могло бы объяснить это.
Кто-то потрудился создать проблему для проблемы на странице Android Google Code, но ни она, ни какое-либо из сообщений, с которыми я столкнулся, не получили удовлетворительного результата. ответ.
Я неправильно подхожу к проблеме? Должен ли я самостоятельно заполнять данные (загружать файл и анализировать JSON или что-то подобное) и полностью избегать этой проблемы? Такое ощущение, что я здесь упускаю что-то очевидное.
Подробнее здесь: https://stackoverflow.com/questions/352 ... to-populat
Мобильная версия