Портирование веб-приложения на Chrome OS (с поддержкой нескольких мониторов) - PullRequest
0 голосов
/ 14 февраля 2019

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

Одной из возможностей будет реализация его в виде веб-приложения (поскольку у нас уже есть веб-клиент), но в этом случаеМне нужно было бы добавить поддержку нативных функций (опять же, поддержку нескольких мониторов и доступ к USB-устройствам), поэтому мне интересно, что нужно сделать в этом случае.Я, как новичок в разработке для ChromeOS, предпочитаю дополнить код функциями JavaScript ChromeOS, и я не знаю, возможно ли это.

Другой возможный подход - написать приложение для Android,поскольку я вижу, что в ChromeOS добавлена ​​поддержка приложений Android (в этом случае мне пришлось бы писать код с нуля).

Наконец, еще один вариант - написать собственный код, который может быть возможен, например, полагаясь насреду разработки Crouton и повторно использовать код нативного приложения на языке C.

Какой подход вы бы порекомендовали для создания приложения ChromeOS, начиная с веб-приложения или с нативного?

Какой подходбудет гарантировать доступ к собственным функциям (поддержка нескольких мониторов и USB)?

1 Ответ

0 голосов
/ 21 февраля 2019

Я обнаружил два API, которые должны помочь с поддержкой нескольких мониторов:

system.display API позволяет обнаруживать и отслеживать текущую компоновку монитора, в то время как windows API позволяет создавать несколько окон в одном приложении.Объединив их, я смогу создать окно для каждого монитора на тот случай, если я выберу маршрут реализации Chrome.

Учитывая, что у меня уже есть собственная реализация для Linux, Crostini (в отличие от Crouton ) также очень привлекателен, поскольку он обеспечивает более глубокий уровень интеграции практически без изменений в коде и не требует поддержки двух разных версий веб-клиента, с единственным недостатком, который требуетпользователь может создать среду Linux и вручную установить приложение, также оно не поддерживается на всех устройствах Chromebook и на многих оно никогда не будет поддерживаться.

Мне все еще нужно проверить, каковы потери производительности.Также уровень интеграции с USB I / O может быть выше, чем тот, который достигается с помощью chrome API.

...