如要在自己的專案中使用 gtfs-realtime-bindings
Java 類別,請務必加入適當的依附元件。我們會將模組發布至 Maven Central Repository,方便 Maven、Ivy 和 Gradle 等 Java 建構工具參照該模組。
在下方依附元件程式碼片段中,請將版本字串 X.Y.Z
換成 Maven Central Repository 中提供的最新版本。
如果是 Maven,請在 pom.xml
依附元件部分中加入:
<dependency> <groupId>com.google.transit</groupId> <artifactId>gtfs-realtime-bindings</artifactId> <version>X.Y.Z</version> </dependency>
如果是 Gradle,請在 build.gradle
依附元件部分中加入:
compile group: 'org.google.transit', name: 'gtfs-realtime-bindings', version: 'X.Y.Z'
以下程式碼片段示範如何從特定網址下載 GTFS Realtime 資料動態饋給,並視為 FeedMessage
(GTFS Realtime 結構定義的根類型) 進行剖析,然後反覆處理結果。
import java.net.URL; import com.google.transit.realtime.GtfsRealtime.FeedEntity; import com.google.transit.realtime.GtfsRealtime.FeedMessage; public class GtfsRealtimeExample { public static void main(String[] args) throws Exception { URL url = new URL("URL OF YOUR GTFS-REALTIME SOURCE GOES HERE"); FeedMessage feed = FeedMessage.parseFrom(url.openStream()); for (FeedEntity entity : feed.getEntityList()) { if (entity.hasTripUpdate()) { System.out.println(entity.getTripUpdate()); } } } }
詳情請參閱 Java 專案頁面。