mirror of
https://github.com/zhigang1992/react-native.git
synced 2026-05-05 16:37:08 +08:00
Extract PackagerConnectionSettings to ensure easier reusability of PackagerConnection module
Reviewed By: cwdick Differential Revision: D4689535 fbshipit-source-id: f698837f407a03bf91521cc5e921c66f5755e6e0
This commit is contained in:
committed by
Facebook Github Bot
parent
50ff7167cb
commit
60142adc72
@@ -13,7 +13,10 @@ import javax.annotation.Nullable;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
import android.net.Uri;
|
||||
|
||||
import com.facebook.common.logging.FLog;
|
||||
import com.facebook.react.modules.systeminfo.AndroidInfoHelpers;
|
||||
|
||||
import okhttp3.RequestBody;
|
||||
import okhttp3.ResponseBody;
|
||||
@@ -26,6 +29,7 @@ import org.json.JSONObject;
|
||||
*/
|
||||
final public class JSPackagerClient implements ReconnectingWebSocket.MessageCallback {
|
||||
private static final String TAG = JSPackagerClient.class.getSimpleName();
|
||||
private static final String PACKAGER_CONNECTION_URL_FORMAT = "ws://%s/message?device=%s&app=%s&context=%s";
|
||||
private static final int PROTOCOL_VERSION = 2;
|
||||
|
||||
public class Responder {
|
||||
@@ -83,8 +87,18 @@ final public class JSPackagerClient implements ReconnectingWebSocket.MessageCall
|
||||
private ReconnectingWebSocket mWebSocket;
|
||||
private Map<String, RequestHandler> mRequestHandlers;
|
||||
|
||||
public JSPackagerClient(String url, Map<String, RequestHandler> requestHandlers) {
|
||||
public JSPackagerClient(String clientId, PackagerConnectionSettings settings, Map<String, RequestHandler> requestHandlers) {
|
||||
super();
|
||||
|
||||
Uri.Builder builder = new Uri.Builder();
|
||||
builder.scheme("ws")
|
||||
.encodedAuthority(settings.getDebugServerHost())
|
||||
.appendPath("message")
|
||||
.appendQueryParameter("device", AndroidInfoHelpers.getFriendlyDeviceName())
|
||||
.appendQueryParameter("app", settings.getPackageName())
|
||||
.appendQueryParameter("clientid", clientId);
|
||||
String url = builder.build().toString();
|
||||
|
||||
mWebSocket = new ReconnectingWebSocket(url, this);
|
||||
mRequestHandlers = requestHandlers;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user