Контекст
Наше приложение показывает пользователю флеш-карту HTML.
Мы добавили несколько слоев "фильтров" для удовлетворения различных групп пользователей:
- Чтобы удовлетворить энтузиастов chess, мы конвертируем любой блок
{FEN:rnbqkbnr/pp1ppppp/8/2p5/4P3/5N2/PPPP1PPP/RNBQKB1R b KQkq - 1 2}
в таблицу HTML, представляющую шахматную доску с фигурами в правильной позиции. - Чтобы удовлетворить китайский язык, мы преобразуем
字
в<ruby>字<rt>zì</rt></ruby>
- ...
Оригинальный HTML → Шахматная трансформация → Китайская трансформация →... → Окончательный HTML для отображения
Проблема
Число фильтров растет, что приводит к проблемам:
- Более медленное исполнение
- Более тяжелая загрузка
- Более высокий исходный код для поддержки
- Дополнительные ошибки/сбои
- Бремя обслуживания
Вопрос
Итак, мы хотели бы сделать эти отдельно устанавливаемые приложения.
Например, шахматный + китайский энтузиаст установил бы 3 приложения:
- TheApp
- Плагин TheApp Chess
- TheApp Chinese plugin
TheApp автоматически обнаружит, какие плагины установлены, и вызовите их по очереди (порядок не имеет значения).
Я думал об использовании намерения THEAPPTRANSFORM
, но как получить список приложений с <intent-filter>
для THEAPPTRANSFORM
и вызвать их по очереди?
Скорость является основным требованием. Я читал, что Намерения в 10+ раз медленнее прямых вызовов... Parcelable помощь здесь?
Если это невозможно, есть ли другое решение?