use of com.herewhite.sdk.domain.WindowParams in project whiteboard-android by netless-io.
the class WindowRegisterAppActivity method joinRoom.
private void joinRoom(String uuid, String token) {
logRoomInfo("room uuid: " + uuid + "\nroom token: " + token);
WhiteSdkConfiguration configuration = new WhiteSdkConfiguration(demoAPI.getAppId(), true);
configuration.setUserCursor(true);
configuration.setUseMultiViews(true);
mWhiteSdk = new WhiteSdk(mWhiteboardView, this, configuration);
mWhiteSdk.setCommonCallbacks(new CommonCallback() {
@Override
public void onLogger(JSONObject object) {
logAction(object.toString());
}
});
// 如需支持用户头像,请在设置 WhiteSdkConfiguration 后,再调用 setUserPayload 方法,传入符合用户信息
RoomParams roomParams = new RoomParams(uuid, token, DemoAPI.DEFAULT_UID);
roomParams.setWritable(true);
HashMap<String, String> styleMap = new HashMap<>();
styleMap.put("bottom", "12px");
styleMap.put("left", "60px");
styleMap.put("position", "fixed");
WindowParams windowParams = new WindowParams().setContainerSizeRatio(3f / 4).setChessboard(true).setDebug(true).setCollectorStyles(styleMap);
roomParams.setWindowParams(windowParams);
registerMonaco();
registerEmbedPage();
mWhiteSdk.joinRoom(roomParams, new AbstractRoomCallbacks() {
@Override
public void onPhaseChanged(RoomPhase phase) {
logRoomInfo("onPhaseChanged: " + phase.name());
showToast(phase.name());
}
@Override
public void onRoomStateChanged(RoomState roomState) {
if (roomState.getWindowBoxState() != null) {
logRoomInfo("WindowBoxState " + roomState.getWindowBoxState());
}
}
}, new Promise<Room>() {
@Override
public void then(Room room) {
mRoom = room;
}
@Override
public void catchEx(SDKError sdkError) {
}
});
}
use of com.herewhite.sdk.domain.WindowParams in project whiteboard-android by netless-io.
the class WindowRestoreActivity method joinRoom.
private void joinRoom(String uuid, String token) {
logRoomInfo("room uuid: " + uuid + "\nroom token: " + token);
WhiteSdkConfiguration configuration = new WhiteSdkConfiguration(DemoAPI.get().getAppId(), true);
configuration.setUserCursor(true);
configuration.setFonts(new MapBuilder<String, String>().put("宋体", "https://your-cdn.com/Songti.ttf").build());
configuration.setUseMultiViews(true);
mWhiteSdk = new WhiteSdk(mWhiteboardView, this, configuration);
mWhiteSdk.setCommonCallbacks(new CommonCallback() {
@Override
public void onLogger(JSONObject object) {
logAction(object.toString());
}
});
RoomParams roomParams = new RoomParams(uuid, token, DemoAPI.DEFAULT_UID);
HashMap<String, String> styleMap = new HashMap<>();
styleMap.put("backgroundColor", "red");
styleMap.put("bottom", "12px");
styleMap.put("left", "60px");
styleMap.put("position", "fixed");
WindowParams windowParams = new WindowParams().setContainerSizeRatio(3f / 4).setChessboard(true).setDebug(true).setCollectorStyles(styleMap);
roomParams.setWindowParams(windowParams);
mWhiteSdk.joinRoom(roomParams, new RoomListener() {
@Override
public void onPhaseChanged(RoomPhase phase) {
logRoomInfo("onPhaseChanged: " + phase.name());
showToast(phase.name());
}
@Override
public void onDisconnectWithError(Exception e) {
}
@Override
public void onKickedWithReason(String s) {
}
@Override
public void onRoomStateChanged(RoomState roomState) {
if (roomState.getWindowBoxState() != null) {
logRoomInfo("WindowBoxState " + roomState.getWindowBoxState());
}
}
@Override
public void onCanUndoStepsUpdate(long l) {
}
@Override
public void onCanRedoStepsUpdate(long l) {
}
@Override
public void onCatchErrorWhenAppendFrame(long l, Exception e) {
}
}, new Promise<Room>() {
@Override
public void then(Room room) {
mRoom = room;
}
@Override
public void catchEx(SDKError sdkError) {
}
});
}
use of com.herewhite.sdk.domain.WindowParams in project whiteboard-android by netless-io.
the class WindowTestActivity method joinRoom.
private void joinRoom(String uuid, String token) {
logRoomInfo("room uuid: " + uuid + "\nroom token: " + token);
WhiteSdkConfiguration configuration = new WhiteSdkConfiguration(demoAPI.getAppId(), true);
/*显示用户头像*/
configuration.setUserCursor(true);
// 动态 ppt 需要的自定义字体,如果没有使用,无需调用
configuration.setFonts(new MapBuilder<String, String>().put("宋体", "https://your-cdn.com/Songti.ttf").build());
// configuration.setEnableSyncedStore(true);
configuration.setUseMultiViews(true);
mWhiteSdk = new WhiteSdk(mWhiteboardView, this, configuration);
mWhiteSdk.setCommonCallbacks(new CommonCallback() {
@Override
public void onLogger(JSONObject object) {
logAction(object.toString());
}
});
/* 设置自定义全局状态,在后续回调中 GlobalState 直接进行类型转换即可 */
WhiteDisplayerState.setCustomGlobalStateClass(GlobalState.class);
// 如需支持用户头像,请在设置 WhiteSdkConfiguration 后,再调用 setUserPayload 方法,传入符合用户信息
RoomParams roomParams = new RoomParams(uuid, token, DemoAPI.DEFAULT_UID);
HashMap<String, String> styleMap = new HashMap<>();
styleMap.put("backgroundColor", "red");
styleMap.put("top", "12px");
styleMap.put("left", "60px");
styleMap.put("position", "fixed");
// String darkMode = darkModeStyle();
WindowParams windowParams = new WindowParams().setContainerSizeRatio(3f / 4).setChessboard(true).setDebug(true).setCollectorStyles(styleMap);
// optional
roomParams.setWindowParams(windowParams);
mWhiteSdk.joinRoom(roomParams, new RoomListener() {
@Override
public void onPhaseChanged(RoomPhase phase) {
logRoomInfo("onPhaseChanged: " + phase.name());
showToast(phase.name());
}
@Override
public void onDisconnectWithError(Exception e) {
}
@Override
public void onKickedWithReason(String s) {
}
@Override
public void onRoomStateChanged(RoomState roomState) {
if (roomState.getWindowBoxState() != null) {
logRoomInfo("WindowBoxState " + roomState.getWindowBoxState());
}
}
@Override
public void onCanUndoStepsUpdate(long l) {
}
@Override
public void onCanRedoStepsUpdate(long l) {
}
@Override
public void onCatchErrorWhenAppendFrame(long l, Exception e) {
}
@Override
public void onAttributesUpdate(String valueOf) {
state = gson.fromJson(valueOf, UserSyncedState.class);
logRoomInfo("onAttributesUpdate:" + state);
updateDragView();
}
}, new Promise<Room>() {
@Override
public void then(Room room) {
mRoom = room;
}
@Override
public void catchEx(SDKError sdkError) {
}
});
}
Aggregations