MainActivity.java 2.92 KB
package com.cnlive.im.ui;

import android.content.Intent;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;

import com.cnlive.im.R;
import com.cnlive.libs.util.chat.ChatUtil;
import com.cnlive.libs.util.chat.base.IChat;

import static com.cnlive.im.R.id.connect;


public class MainActivity extends AppCompatActivity implements View.OnClickListener {

    private Button groupChatBtn, privateChat;
    private String TAG = "MainActivity";
    private Button connectBtn;
    private Button re_connect;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        initUI();
    }

    //连接监听
    private IChat.OnConnectListener connectListener = new IChat.OnConnectListener() {
        @Override
        public void onTokenIncorrect() {
            Log.e(TAG, "ConnectListener TokenIncorrect");
            Toast.makeText(MainActivity.this, "TokenIncorrect", Toast.LENGTH_SHORT).show();
            connectBtn.setText("重新连接");
        }

        @Override
        public void onSuccess(String s) {
            Log.e(TAG, "ConnectListener 连接监听" + s);
            Toast.makeText(MainActivity.this, "连接成功", Toast.LENGTH_SHORT).show();
            connectBtn.setVisibility(View.INVISIBLE);
            groupChatBtn.setVisibility(View.VISIBLE);
            privateChat.setVisibility(View.VISIBLE);
        }

        @Override
        public void onError(int i, String s) {
            Log.e(TAG, "ConnectListener errorCode : " + i + " : errorMessage : " + s);
            Toast.makeText(MainActivity.this, s, Toast.LENGTH_SHORT).show();
            connectBtn.setText("重新连接");

        }
    };

    private void initUI() {
        groupChatBtn = (Button) findViewById(R.id.groupChat);
        privateChat = (Button) findViewById(R.id.privateChat);
        connectBtn = (Button) findViewById(connect);
        groupChatBtn.setOnClickListener(this);
        privateChat.setOnClickListener(this);
        connectBtn.setOnClickListener(this);
    }


    @Override
    public void onClick(View view) {
        switch (view.getId()) {
            case R.id.groupChat:
                Intent intent = new Intent(MainActivity.this, ChatRoomActivity.class);
                startActivity(intent);
                break;
            case R.id.privateChat:
                Intent intent1 = new Intent(MainActivity.this, PrivateChatActivity.class);
                startActivity(intent1);
                break;
            case connect:
                //调用此方法在聊天室中不切换用户默认为游客
                // 调用此方法之后不调用断开连接,网络掉线等原因系统会自动重连用户无需处理
                ChatUtil.connect(connectListener);


        }
    }
}