Они просят запустить команду для преобразования файла protobuf в быстрый объект.Но поскольку я делаю вызовы API каждую минуту, это возвращает файл protobuf.Как я могу выполнить эту команду каждый раз?
Я думаю, что вы неправильно поняли документацию: вам не нужно запускать protoc --swift_out=. my.proto
для каждого полученного вами файла .pb;Вы используете эту команду для генерации кода, который знает, как читать и записывать данные в соответствии со схемой, которую вы определили в файле .proto.Затем вы можете взять этот сгенерированный код и добавить его в свой проект iOS, а после этого вы можете использовать код для чтения и записи данных protobuf, соответствующих вашей схеме.
Я создаю приложение, которое показываетместоположение локальных автобусов в режиме реального времени.
Итак, прежде чем вы сможете начать работу, вам понадобится файл .proto, который описывает формат данных, используемый любым, кто предоставляет данные о расположении шины, или вам понадобится тот, кто предоставит эти данные для использования SwiftProtobuf или аналогичного для создания синтаксического анализатора Swift для их файла .proto.
... Я понятия не имею, почему мы можем 'Разобрать их как файл JSON.
Ну, смысл формата protobuf в том, чтобы быть независимым от языка и быстрее / проще в использовании, чем JSON или XML, и одним из дизайнерских решений, которые, по-видимому, Googleсделано, чтобы пожертвовать читаемостью человека для размера / скорости.Таким образом, вы могли бы написать синтаксический анализатор для анализа этих файлов так же, как и данные JSON, но вам нужно узнать, как работает формат.Но намного проще описать данные, которые вы отправляете, и программа генерирует код.Одним из приятных аспектов этой схемы является то, что вы можете описать схему один раз, а затем сгенерировать код, который работает с этой схемой для нескольких языков, поэтому вам не нужно писать код отдельно для вашего приложения iOS, вашего приложения Android и вашего сервера.