我正在尝试将我的 android 应用程序与同步服务器同步,但客户端似乎无法连接到服务器。Admin UI 在 localhost:9980 上完美运行。服务器在 docker 上运行。
001-13:29:41.2231 [INFO ] [SvrUws] UwsServer listening on all interfaces, port 9999 without SSL
001-13:29:41.2234 [WARN ] [SvSync] UNSECURED no-authentication mode enabled - every client allowed without any validation
001-13:29:41.2256 [INFO ] [SvSync] Started on port 9999
001-13:29:41.2257 [INFO ] [SySvAp] Starting object browser on 0.0.0.0:9980
001-13:29:41.2263 [INFO ] [HttpSv] Running in single-store mode with an already opened store
001-13:29:41.2263 [INFO ] [HttpSv] Listening on 0.0.0.0:9980
001-13:29:41.2266 [WARN ] [HttpSv] UNSECURED no-authentication mode enabled:
!!! Allowing access to anyone without any user validation
!!! After e.g. adjusting user logins, please restart asap to secure the server again
001-13:29:41.2266 [INFO ] [HttpSv] User management: enabled
001-13:29:41.2305 [INFO ] [HttpSv] HttpServer listening on all interfaces, port 9980
001-13:29:41.2318 [INFO ] [SySvAp] ObjectBox sync server started in 62 ms
首先,我尝试了文档所说的“wss://127.0.0.1”,然后我尝试使用 ws,然后使用指定的端口号(9980 和 9999)。然后我尝试配置url。
{
"dbDirectory": "objectbox",
"bind": "ws://0.0.0.0:9999",
"browserBind": "http://127.0.0.1:9980",
"browserThreads": 4,
"certificatePath": ""
}
都没有奏效。请帮助我如何找到正确的连接地址。
更新:在模拟器中,您必须使用 10.0.2.2 才能访问 localhost!在 MainActivity onCreate() 方法中:
BoxStore boxStore = ObjectBox.get();
SyncClient syncClient = Sync.client(
boxStore,
"ws://10.0.2.2",
SyncCredentials.none()
).buildAndStart();