Имейте в виду - вы разрабатываете для мобильного телефона.Память ограничена.Ваше приложение не будет единственным приложением, которое будет запускать пользователь.Постоянно пытаться использовать память в интересах вашего собственного приложения - плохая практика.Пользователь не захочет, чтобы ваша служба работала постоянно.
Конечно, операционная система в конечном итоге выкинет вашу службу из окна, если будет не хватать памяти, но лучше не использовать службу для храненияданные.При запуске используйте отдельный поток и распакуйте данные.
Вы можете записать распакованный индексный файл во внешнее хранилище или сжать его порциями, чтобы вы могли обойтись без распаковки всей вещи.
Если вы действительно считаете, что это важная функция для вашего приложения, сделайте ее необязательной в настройках и добавьте службу (возможно, даже при использовании широковещательного приемника при загрузке, если ваше приложение так важно для пользователя) для загрузки и распаковкиданные.Но я бы очень рекомендовал не иметь сервис для хранения, если это то, что вы планируете использовать.