parseUrl method
parse url in remote debugging
url structure: http://host/versionId/index.bundle
@param remoteServerUrl remote debugging url
Implementation
void parseUrl(String remoteServerUrl) {
if (remoteServerUrl == '') {
return;
}
try {
// final uri = Uri.parse('https://example.com/api/fetch?limit=10,20,30&max=100');
final url = Uri.parse(remoteServerUrl);
_scheme = url.scheme;
_host = url.host;
_path = url.path;
int port = url.port;
if (port > 0) {
_host = "${_host!}:$port";
}
_wsUrl = url.queryParameters['debugUrl'];
var tempPath = _path;
if (tempPath != null && tempPath.startsWith("/")) {
_path = tempPath.substring(1); // remove first character /
int index = _path?.indexOf("/") ?? -1;
if (index >= 0) {
_versionId = _path?.substring(0, index);
}
}
LogUtils.i(
"Hippy DevRemoteServerData",
"parseUrl host:$_host, versionId:$_versionId",
);
} catch (e) {
LogUtils.e(
"Hippy DevRemoteServerData",
"parseUrl error, ${e.toString()}",
);
}
}