Android SDK API リファレンス

クラス | 公開メンバ関数 | 全メンバ一覧
io.skyway.Peer.Room クラスabstract

MeshRoom / SFURoom の基底クラスです。 [詳解]

io.skyway.Peer.Room の継承関係図
io.skyway.Peer.MeshRoom io.skyway.Peer.SFURoom

クラス

enum  RoomEventEnum
 ルームイベント列挙子 [詳解]
 

公開メンバ関数

abstract void close ()
 ルームを退出し、ルーム内のすべてのユーザーとのコネクションをcloseします。
 
boolean send (Object data) throws IllegalArgumentException
 現在のルームに入室中のピアにデータを送信します。String または byte[] を送信できます。送信するデータサイズの上限は20MBです。送信頻度は100msecに1回に制限されています。送信頻度の制限を超えた送信データはキューに入り、100msec毎に順次送信されます。 [詳解]
 
void on (RoomEventEnum event, OnCallback callback) throws IllegalArgumentException
 Room のイベントコールバック Block を設定します。 [詳解]
 
void getLog ()
 現在のルームのログ情報を取得します。結果は LOG イベントで返されます。 [詳解]
 
String getRoomName ()
 ルーム名を取得します。 [詳解]
 
void finalize ()
 
Peer getProvider ()
 このルームを生成したピアオブジェクトを取得します [詳解]
 

詳解

MeshRoom / SFURoom の基底クラスです。

メソッド詳解

◆ getLog()

void io.skyway.Peer.Room.getLog ( )

現在のルームのログ情報を取得します。結果は LOG イベントで返されます。

Room room;
room.on(Room.RoomEventEnum.LOG, new OnCallback() {
@Override
public void onCallback(Object object) {
if (!(object instanceof String[])) return;
String[] logs = (String[])object;
for (String log : logs) {
try {
JSONObject jsonLog = new JSONObject(log);
}
catch (JSONException e) { }
}
}
});

◆ getProvider()

Peer io.skyway.Peer.Room.getProvider ( )

このルームを生成したピアオブジェクトを取得します

戻り値
ピアオブジェクト

◆ getRoomName()

String io.skyway.Peer.Room.getRoomName ( )

ルーム名を取得します。

戻り値
ルーム名

◆ on()

void io.skyway.Peer.Room.on ( RoomEventEnum  event,
OnCallback  callback 
) throws IllegalArgumentException

Room のイベントコールバック Block を設定します。

Room room;
room.on(Room.RoomEventEnum.OPEN, new OnCallback() {
@Override
public void onCallback(Object object) {
if (!(object instanceof String)) return;
String roomName = (String)object;
}
});
room.on(Room.RoomEventEnum.CLOSE, new OnCallback() {
@Override
public void onCallback(Object object) {
if (!(object instanceof String)) return;
String roomName = (String)object;
}
});
room.on(Room.RoomEventEnum.ERROR, new OnCallback() {
@Override
public void onCallback(Object object) {
}
});
room.on(Room.RoomEventEnum.PEER_JOIN, new OnCallback() {
@Override
public void onCallback(Object object) {
if (!(object instanceof String)) return;
String peerId = (String)object;
}
});
room.on(Room.RoomEventEnum.PEER_LEAVE, new OnCallback() {
@Override
public void onCallback(Object object) {
if (!(object instanceof String)) return;
String peerId = (String)object;
}
});
room.on(Room.RoomEventEnum.DATA, new OnCallback2() {
@Override
public void onCallback(Object object) { }
@Override
public void onCallback(final Object object1, final Object object2) {
String peerId = (String)object1;
if (object2 instanceof String) {
String message = (String)object2;
}
else if (object2 instanceof byte[]) {
byte[] array = (byte[])object2;
}
}
});
room.on(Room.RoomEventEnum.LOG, new OnCallback() {
@Override
public void onCallback(Object object) {
if (!(object instanceof String[])) return;
String[] logs = (String[])object;
}
});
引数
event設定するイベント種別を指定します。
callbackイベント発生時に実行するコールバックオブジェクトを設定します。DATA イベントは OnCallback2 を指定する必要があります。
例外
IllegalArgumentExceptioncallbackOnCallback2 ではありません

◆ send()

boolean io.skyway.Peer.Room.send ( Object  data) throws IllegalArgumentException

現在のルームに入室中のピアにデータを送信します。String または byte[] を送信できます。送信するデータサイズの上限は20MBです。送信頻度は100msecに1回に制限されています。送信頻度の制限を超えた送信データはキューに入り、100msec毎に順次送信されます。

引数
data送信データ
戻り値
呼び出し結果
例外
IllegalArgumentExceptiondataString および byte[] のどちらでもありません