# Android SDK version 0.0.1

*2016-08-16 更新*

### SDK使用

dotEngine Android SDK 提供aar打包文件,把aar导入项目既可以使用.


### API文档

<br \/>

#### DotEngine 相关

> ** 创建DotEngine实例 **

```

DotEngine.getInstance()

* 此方法会创建一个dotEngine的实例

```

<br \/>

> ** 设置相关的回调 **

```

boolean sharedInstanceWithListener(Context context, final DotEngineListener listener);

* 此方法会给dotEngine实例设置相关的回调方法

```

<br \/>

> ** 设置视频的质量 **

```

void setupVideoProfile(DotRTCEngineVideoProfileType dotRtcEngineVideoProfileType);

* 设置视频的质量

\/\/ weight high fps bts

DotEngine_VideoProfile_120P(0, 160, 120, 15, 80), \/\/ 160x120 15 80

\/\/ RTCEngine_VideoProfile_120P_3 = 2, \/\/ 120x120 15 60

DotEngine_VideoProfile_120P_2(1, 120, 160, 15, 80),\/\/

RTCEngine_VideoProfile_120P_3(2, 120, 120, 15, 60),\/\/

\/\/ RTCEngine_VideoProfile_180P = 10, \/\/ 320x180 15 160

DotEngine_VideoProfile_180P(10, 320, 180, 15, 160),\/\/

\/\/ RTCEngine_VideoProfile_180P_2 = 11, \/\/ 180x320 15 160

DotEngine_VideoProfile_180P_2(11, 180, 320, 15, 160),\/\/

\/\/ RTCEngine_VideoProfile_180P_3 = 12, \/\/ 180x180 15 120

DotEngine_VideoProfile_180P_3(12, 180, 180, 15, 120),\/\/

\/\/ RTCEngine_VideoProfile_240P = 20, \/\/ 320x240 15 200

DotEngine_VideoProfile_240P(20, 320, 240, 15, 200),\/\/

\/\/ RTCEngine_VideoProfile_240P_2 = 21, \/\/ 240x320 15 200

DotEngine_VideoProfile_240P_2(21, 240, 320, 15, 200),\/\/

\/\/ RTCEngine_VideoProfile_240P_3 = 22, \/\/ 240x240 15 160

DotEngine_VideoProfile_240P_3(22, 240, 240, 15, 160),\/\/

\/\/ RTCEngine_VideoProfile_360P = 30, \/\/ 640x360 15 400

DotEngine_VideoProfile_360P(30, 640, 360, 15, 400),\/\/

\/\/ RTCEngine_VideoProfile_360P_2 = 31, \/\/ 360x640 15 400

DotEngine_VideoProfile_360P_2(31, 360, 640, 15, 400),\/\/

\/\/ RTCEngine_VideoProfile_360P_3 = 32, \/\/ 360x360 15 300

DotEngine_VideoProfile_360P_3(32, 360, 360, 15, 300),\/\/

\/\/ RTCEngine_VideoProfile_360P_6 = 35, \/\/ 360x360 30 500

\/\/ RTCEngine_VideoProfile_480P = 40, \/\/ 640x480 15 500

DotEngine_VideoProfile_480P(40, 640, 480, 15, 500),\/\/

\/\/ RTCEngine_VideoProfile_480P_2 = 41, \/\/ 480x640 15 500

DotEngine_VideoProfile_480P_2(41, 480, 640, 15, 500),\/\/

\/\/ RTCEngine_VideoProfile_480P_3 = 42, \/\/ 480x480 15 400

DotEngine_VideoProfile_480P_3(42, 480, 480, 15, 400),\/\/

DotEngine_VideoProfile_480P_4(43, 640, 480, 30, 750),\/\/

DotEngine_VideoProfile_480P_5(44, 480, 640, 30, 750),\/\/

DotEngine_VideoProfile_480P_6(45, 480, 480, 30, 680),\/\/

DotEngine_VideoProfile_480P_7(46, 640, 480, 15, 1000),\/\/

DotEngine_VideoProfile_720P(50, 1280, 720, 15, 1000),\/\/

DotEngine_VideoProfile_720P_2(51, 720, 1280, 15, 1000),\/\/

DotEngine_VideoProfile_720P_3(52, 1280, 720, 30, 1700),\/\/

DotEngine_VideoProfile_720P_4(53, 720, 1280, 30, 1700),\/\/

```

<br \/>

> ** 得到视频的状态 **

```

boolean videoEnable();

* 视频的开启状态

```

<br \/>

> ** 得到音频的状态 **

```

boolean audioEnable();

* 音频的开启状态

```

<br \/>

> ** 加入房间 **

```

boolean joinRoom(final String dotToken);

* 根据得到的token加入房间

```

<br \/>

> ** 离开房间 **

```

void leaveRoom();

* 离开房间

```

<br \/>

> ** 开启本地的音视频 **

```

boolean startPreview();

* 开启本地的音视频, 使用的场景是需要在加入房间之前看到自己的预览, 如果在加入房间之前没有开启预览joinRoom会自动的开启预览

```

<br \/>

> ** 关闭本地的音视频 **

```

void stopPreview();

* 关闭本地的音视频, 在leaveRoom的时候不会自动关闭本地的音视频, 需要开发者手动调用.

```

<br \/>

> ** 切换前后摄像头 **

```

void switchCamera();

* 切换前后摄像头

```

<br \/>

> ** 开启\/关闭视频 **

```

void enableVideo(final boolean enable);

* enable 为true 或者 false, 分别代表开启和关闭, 结果会通过回调来通知用户

* 调用此方法后调用结果会通知到在房间的其他用户

```

<br \/>

> ** 开启\/关闭音频 **

```

void enableAudio(final boolean enable);

* enable 为true或者false, 分别代表开启和关闭, 结果会通过回调来通知用户

* 调用此方法后调用结果会通知到房间的其他用户

```

<br \/>

> ** 开启\/关闭麦克风模式 **

```

void enableSpeakerphone(boolean enable);

* 开启\/关闭麦克风模式, enable为true或者false, 分别代表开启和关闭,默认是开启

```

<br \/>

> ** 获得某个用户的视频视图 **

```

SurfaceView getVideoView(final String userId);

* 获得某个用户的视频视图, userId为用户的id, 如果不存在会返回null

```

<br \/>

> ** 获得当前用户 **

```

String currentUser();

```

<br \/>

> ** 获得当前房间的用户列表 **

```

Set<String> getUsers();

* 获得当前房间的用户列表

```

<br \/>

> ** 应用进入后台后 **

```

void onResume();

* 应用进入后台后

```

<br \/>

> ** 销毁当前的实例 **

```

void destroy();

* 销毁当前的实例

```

<br \/>

#### DotEngineListener 事件回调

<br \/>

> ** abstract public void onInitPrepared() **

```

* 初始化完成,可以开始预览加入房间了

```

<br \/>

> ** abstract public void onJoined(String user) **

```

* 有用户进入了房间,包括自己

```

<br \/>

> ** abstract public void onLeave(String user) **

```

* 有用户离开的房间

```

<br \/>

> ** abstract public void onOccurError(DotEngineErrorType errorCode); **

```

* 发生了一些错误回调

```

<br \/>

> ** public void onEnableAudio(boolean enable, String user) **

```

* 音频开关回调, 包括远程的人

```

<br \/>

> ** public void onEnableVideo(boolean enable, String user) **

```

* 视频开关回调 ,包括远程的人

```

<br \/>

> ** abstract public void onAddVideoView(String user, SurfaceView view) **

```

* 视频视图加入回调, 包括远程的人

```

<br \/>

> ** abstract public void onRemoveVideoView(String user, SurfaceView view) **

```

* 视频视图移除回调, 包括远程的人

```

<br \/>

> ** public void onAddStream(String user) **

```

* stream 添加回调,非必须实现. 有特定需求再实现这个,比如远程用户没有视频

```

<br \/>

> ** public void onRemoveStream(String user) **

```

* stream 移除回调, 非必须实现,

```

results matching ""

    No results matching ""