# 좋아요 카운트
채팅방에 대한 좋아요 카운트를 가져오고, 카운트를 올리는 요청을 간편하게 구현할 수 있습니다.
# 라이브러리 사용 방법
해당 라이브러리는 따로 API KEY를 발급받거나 CMS에서 설정해야하는 사전 설정이 없습니다.
아래 내용을 읽고 진행하시면 됩니다.
- 좋아요 카운트 전송하기
좋아요 카운트를 전송하는 예제입니다.
본 API 는 카운트 집계만 하도록 되어있어서, 사용자별로 한번만 전송하기 원하는 경우는 내부적으로 상태를 관리해야 합니다.
VChatCloudApi.getInstance().sendLike(room_id, new ApiCallback() {
@Override
public void onFailure(VChatCloudException e) {
}
@Override
public void onSuccess(JSONObject jsonObject) {
getLike(); // 좋아요 카운트를 가져오는 메소드를 호출 ( 2번 항목 )
}
});
1
2
3
4
5
6
7
8
9
10
11
2
3
4
5
6
7
8
9
10
11
- 좋아요 카운트 가져오기
좋아요 카운트는 상대방이 눌러도 동적으로 메시지를 전송해주지 않기 때문에,
채팅서버로 주기적으로 요청을 하거나, 커스텀 메시지로 다시 불러오도록 구현이 필요합니다.
아래는 채팅서버로부터 카운트를 가져오는 예제입니다.
String room_id = options.channelKey; // 채팅 룸 id
VChatCloudApi.getInstance().getLikeCount(room_id, new ApiCallback() {
@Override
public void onFailure(VChatCloudException e) {
Log.e("getLikeCount", "" + e);
}
@Override
public void onSuccess(JSONObject jsonObject) {
Log.e("getLikeCount", "" + jsonObject);
android.os.Message msg = likeHandler.obtainMessage();
msg.obj = jsonObject;
likeHandler.sendMessage(msg);
}
});
Handler likeHandler = new Handler(Looper.getMainLooper()) {
public void handleMessage(android.os.Message msg) {
JSONObject object = (JSONObject) msg.obj;
if ((long) object.get("like_cnt") == 0) {
$titleLikeCount.setText("0");
} else {
// Util.valueConversion 은 Vchatcloud 의 라이브러리에서 나온 메소드 입니다.
// 숫자 요청한 단위로(1000) 짤라서 제공되어진 숫자와 데이터를(단위 문자) 표현해주는 유틸입니다.
$titleLikeCount.setText(Util.valueConversion(new String[] {"", "K", "M", "G", "T", "P", "E", "Z", "Y"}, (long) object.get("like_cnt"), 1000));
}
}
};
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
JSONObject 리턴 데이터
값 | 식별자 | 설명 |
---|---|---|
result_cd | int | 성공 (1), 실패(0) |
like_cnt | long | 좋아요 카운트 |
← 오픈 그래프