Могу ли я использовать api java 'jena' в мобильном приложении флаттера - PullRequest
0 голосов
/ 03 ноября 2018

Я хочу создать мобильное приложение с флаттером, но мне нужен api java, который называется jena, поэтому можем ли мы использовать библиотеку java ... В флаттере, если да, то как?

Ответы [ 2 ]

0 голосов
/ 04 ноября 2018

Вы можете использовать каналы платформы для связи с собственными интерфейсами вашего приложения, но, глядя на библиотеку, это, вероятно, не очень хорошая идея.

Больше недостатков:

  • Вам необходимо дважды реализовать собственный код для Android (Java / Kotlin) и iOS (ObjC / Swift). Это означает, что приложение, зависящее от Apache Jena, будет работать только на Android, если вы не найдете аналога, который изначально работает на iOS.
  • Вся связь по каналам платформы асинхронна, что увеличивает сложность.
  • Когда API библиотеки java сложен, вы в конечном итоге дублируете много кода.

Если ваше приложение сильно зависит от Apache Jena, у вас есть несколько вариантов:

  • Создать серверную службу в Java, которая выполняет обработку, для которой требуется Apache Jena. Отправьте результат вашему клиенту Flutter.
  • Напишите нативное приложение для Android, которое напрямую использует библиотеку. Оставьте iOS.
  • Перенос частей Apache Jena, которые нужны вашему приложению, в Dart (возможно, слишком сложный)
0 голосов
/ 03 ноября 2018

Вам потребуется плагин Flutter , который предоставляет API Jena для вашей базы кода Dart по каналам платформы .

Плохая новость заключается в том, что, по крайней мере, по состоянию на ноябрь 2018 года, такого плагина Flutter пока не существует .

Суть в том, что, да, это технически выполнимо, но вам нужно будет создать плагин самостоятельно или мотивировать кого-то создать его.

...