Как я могу использовать Protobuf в NativeScript?

Я хотел бы использовать protobuf в приложении NativeScript, однако я изо всех сил пытаюсь понять, как это похоже на NativeScript не поддерживает двоичный код по сети.

Я знаю, что приложения NativeScript могут использовать protobuf, потому что почти уверен, что nativescript-plugin-firebase делает. Как этот плагин может использовать protobuf?


person rynop    schedule 16.06.2019    source источник


Ответы (1)


Да, это запрос открытой функции для поддержки двоичных данных в HTTP-запросах.

Обходной путь - использовать плагин https://github.com/NativeScript/nativescript-background-http/, который поддерживает загрузку двоичных данных. на удаленный сервер.

tns plugin add nativescript-background-http
person Manoj    schedule 16.06.2019
comment
Спасибо. Насколько я могу судить, это требует чтения файла по пути. Вы предлагаете записать PB в файл на устройстве? - person rynop; 17.06.2019
comment
Да, это должно помочь. Просто укажите имя файла для загрузки. - person Manoj; 17.06.2019
comment
Спасибо. Это, вероятно, сработает, но кажется подверженным ошибкам и беспорядочным. nativescript-plugin-firebase не использует этот метод, как этот плагин использует protobuf? Используется ли protobuf внутри нативного кода, вызываемого через мост JS из плагина? - person rynop; 17.06.2019
comment
У плагина есть собственный SDK, который выполняет эту работу. Вы можете использовать собственный API и отправлять двоичные данные напрямую, если хотите. - person Manoj; 17.06.2019
comment
Когда вы говорите native apis, вы имеете в виду собственные HTTP-библиотеки (например, OkHttp). У вас случайно не было такого примера? - person rynop; 17.06.2019
comment
Да, я мог бы быть OkHttp (Android) или его эквивалентом на iOS. NativeScript тоже использует OkHttp внутри, вы можете проверить их исходный код. Обратитесь к руководству Java to JS, чтобы узнать о доступ к API Java в JS / TS. - person Manoj; 17.06.2019