Вы можете использовать каналы платформы для связи с собственными интерфейсами вашего приложения, но, глядя на библиотеку, это, вероятно, не очень хорошая идея.
Больше недостатков:
- Вам необходимо дважды реализовать собственный код для Android (Java / Kotlin) и iOS (ObjC / Swift). Это означает, что приложение, зависящее от Apache Jena, будет работать только на Android, если вы не найдете аналога, который изначально работает на iOS.
- Вся связь по каналам платформы асинхронна, что увеличивает сложность.
- Когда API библиотеки java сложен, вы в конечном итоге дублируете много кода.
Если ваше приложение сильно зависит от Apache Jena, у вас есть несколько вариантов:
- Создать серверную службу в Java, которая выполняет обработку, для которой требуется Apache Jena. Отправьте результат вашему клиенту Flutter.
- Напишите нативное приложение для Android, которое напрямую использует библиотеку. Оставьте iOS.
- Перенос частей Apache Jena, которые нужны вашему приложению, в Dart (возможно, слишком сложный)