{"id":19810561,"url":"https://github.com/goodow/realtime-android","last_synced_at":"2025-05-01T08:32:02.370Z","repository":{"id":8693879,"uuid":"10357136","full_name":"goodow/realtime-android","owner":"goodow","description":"数据驱动视图开发在 Android 平台的实现","archived":false,"fork":false,"pushed_at":"2017-12-28T09:14:59.000Z","size":272,"stargazers_count":23,"open_issues_count":0,"forks_count":7,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-04-06T11:48:44.954Z","etag":null,"topics":["activity","android","router"],"latest_commit_sha":null,"homepage":"https://live.goodow.com/","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/goodow.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2013-05-29T10:13:52.000Z","updated_at":"2020-08-11T13:05:11.000Z","dependencies_parsed_at":"2022-07-08T03:30:54.678Z","dependency_job_id":null,"html_url":"https://github.com/goodow/realtime-android","commit_stats":null,"previous_names":[],"tags_count":3,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goodow%2Frealtime-android","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goodow%2Frealtime-android/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goodow%2Frealtime-android/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/goodow%2Frealtime-android/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/goodow","download_url":"https://codeload.github.com/goodow/realtime-android/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":251847828,"owners_count":21653582,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["activity","android","router"],"created_at":"2024-11-12T09:22:22.625Z","updated_at":"2025-05-01T08:32:02.035Z","avatar_url":"https://github.com/goodow.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"realtime-android [![Build Status](https://travis-ci.org/goodow/realtime-android.svg?branch=master)](https://travis-ci.org/goodow/realtime-android)\n================\n\nEvent bus client over WebSocket for java and andorid\n\nVisit [Google groups](https://groups.google.com/forum/#!forum/goodow-realtime) for discussions and announcements.\n\n## Adding realtime-android to your project\n\n### Maven\n\n```xml\n\u003crepositories\u003e\n  \u003crepository\u003e\n    \u003cid\u003esonatype-nexus-snapshots\u003c/id\u003e\n    \u003cname\u003eSonatype Nexus Snapshots\u003c/name\u003e\n    \u003curl\u003ehttps://oss.sonatype.org/content/repositories/snapshots\u003c/url\u003e\n    \u003creleases\u003e\n      \u003cenabled\u003efalse\u003c/enabled\u003e\n    \u003c/releases\u003e\n    \u003csnapshots\u003e\n      \u003cenabled\u003etrue\u003c/enabled\u003e\n    \u003c/snapshots\u003e\n  \u003c/repository\u003e\n\u003c/repositories\u003e\n\u003cdependencies\u003e\n  \u003cdependency\u003e\n    \u003cgroupId\u003ecom.goodow.realtime\u003c/groupId\u003e\n    \u003cartifactId\u003erealtime-android\u003c/artifactId\u003e\n    \u003cversion\u003e0.5.5-SNAPSHOT\u003c/version\u003e\n  \u003c/dependency\u003e\n\u003c/dependencies\u003e\n```\n\n## Usage\n\n### WebSocket mode\n```java\nAndroidPlatform.register(); // or JavaPlatform.register();\n\nBus bus = new ReconnectBus(\"ws://localhost:1986/channel/websocket\", null);\n\nbus.subscribe(\"some/topic\", new MessageHandler\u003cJsonObject\u003e() {\n  @Override\n  public void handle(Message\u003cJsonObject\u003e message) {\n    JsonObject payload = message.payload();\n    System.out.println(\"Name: \" + payload.get(\"name\"));\n  }\n});\n\nbus.publish(\"some/topic\", Json.createObject().set(\"name\", \"Larry Tin\"));\n```\n\n```java\nAndroidPlatform.register(); // or JavaPlatform.register();\n\nStore store = new StoreImpl(\"ws://localhost:1986/channel/websocket\", null);\nBus bus = store.getBus();\n\nHandler\u003cDocument\u003e onLoaded = new Handler\u003cDocument\u003e() {\n  @Override\n  public void handle(Document document) {\n    Model model = document.getModel();\n    CollaborativeMap root = model.getRoot();\n    CollaborativeString name = root.get(\"name\");\n    System.out.println(\"Name: \" + name.getText());\n  }\n};\n\nHandler\u003cModel\u003e opt_initializer = new Handler\u003cModel\u003e() {\n  @Override\n  public void handle(Model model) {\n    CollaborativeString name = model.createString(\"Larry Tin\");\n    CollaborativeMap root = mod.getRoot();\n    root.set(\"name\", name);\n  }\n};\n\nstore.load(\"docType/docId\", onLoaded, opt_initializer, null);\n```\n\nSee [WebSocketBusTest](https://github.com/goodow/realtime-android/blob/master/src/test/java/com/goodow/realtime/java/WebSocketBusTest.java)\nand [ServerStoreTest](https://github.com/goodow/realtime-store/blob/master/src/test/java/com/goodow/realtime/store/impl/ServerStoreTest.java)\nfor more usage.\n\n### Local mode\nSee https://github.com/goodow/realtime-android/blob/master/src/test/java/com/goodow/realtime/java/SimpleBusTest.java\n\n**NOTE:** You must register a platform first by invoke JavaPlatform.register() or AndroidPlatform.register()\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoodow%2Frealtime-android","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgoodow%2Frealtime-android","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgoodow%2Frealtime-android/lists"}