Commit cba08841 authored by sheteng's avatar sheteng

更新server字段

parent 39176743
...@@ -45,8 +45,8 @@ dependencies { ...@@ -45,8 +45,8 @@ dependencies {
def multidex_version = "2.0.1" def multidex_version = "2.0.1"
implementation "androidx.multidex:multidex:$multidex_version" implementation "androidx.multidex:multidex:$multidex_version"
def lifecycle_version = "2.3.1" def lifecycle_version = "2.3.1"
implementation "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version" implementation("androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version")
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version" implementation("androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version")
implementation 'androidx.appcompat:appcompat:1.3.1' implementation 'androidx.appcompat:appcompat:1.3.1'
implementation 'com.google.android.material:material:1.4.0' implementation 'com.google.android.material:material:1.4.0'
implementation 'androidx.constraintlayout:constraintlayout:2.1.1' implementation 'androidx.constraintlayout:constraintlayout:2.1.1'
......
...@@ -11,7 +11,6 @@ import androidx.annotation.NonNull; ...@@ -11,7 +11,6 @@ import androidx.annotation.NonNull;
import androidx.fragment.app.Fragment; import androidx.fragment.app.Fragment;
import com.ccwangluo.ccim.CCIMClient; import com.ccwangluo.ccim.CCIMClient;
import com.ccwangluo.ccim.listener.OnConnectListener;
import com.ccwangluo.ccim.listener.OnPushMsgListener; import com.ccwangluo.ccim.listener.OnPushMsgListener;
import com.ccwangluo.ccim.listener.ResultEventCallback; import com.ccwangluo.ccim.listener.ResultEventCallback;
import com.ccwangluo.ccim.modle.Contact; import com.ccwangluo.ccim.modle.Contact;
...@@ -19,7 +18,6 @@ import com.ccwangluo.ccim.modle.MessageContent; ...@@ -19,7 +18,6 @@ import com.ccwangluo.ccim.modle.MessageContent;
import com.ccwangluo.ccim.modle.NetStatus; import com.ccwangluo.ccim.modle.NetStatus;
import com.ccwangluo.ccim.modle.PullContactsRes; import com.ccwangluo.ccim.modle.PullContactsRes;
import com.ccwangluo.ccim.modle.User; import com.ccwangluo.ccim.modle.User;
import com.ccwangluo.ccim.util.HmacUtil;
import com.ccwangluo.im.databinding.FragmentFirstBinding; import com.ccwangluo.im.databinding.FragmentFirstBinding;
import java.util.ArrayList; import java.util.ArrayList;
...@@ -41,29 +39,29 @@ public class FirstFragment extends Fragment { ...@@ -41,29 +39,29 @@ public class FirstFragment extends Fragment {
public void onViewCreated(@NonNull View view, Bundle savedInstanceState) { public void onViewCreated(@NonNull View view, Bundle savedInstanceState) {
super.onViewCreated(view, savedInstanceState); super.onViewCreated(view, savedInstanceState);
String appKey = "c981adfde9c4000"; // String appKey = "c981adfde9c4000";
String userName = "user101"; // String userName = "user101";
Long userId = 101L; // Long userId = 101L;
String extData = "extData"; // String extData = "extData";
Long ts = System.currentTimeMillis(); // Long ts = System.currentTimeMillis();
String data = appKey + "&" + userId + "&" + userName + "&" + extData + "&" + ts + // String data = appKey + "&" + userId + "&" + userName + "&" + extData + "&" + ts +
"&wW7cR31PwJseIoZMOs311nljHpwUmujs"; // "&wW7cR31PwJseIoZMOs311nljHpwUmujs";
//sign计算在服务器,本地不要暴露appsecrect // //sign计算在服务器,本地不要暴露appsecrect
String sign = HmacUtil.stringToSign("wW7cR31PwJseIoZMOs311nljHpwUmujs", data); // String sign = HmacUtil.stringToSign("wW7cR31PwJseIoZMOs311nljHpwUmujs", data);
//
CCIMClient.getInstance().initSDK(getContext(), appKey, userName, extData, userId, ts, sign, new OnConnectListener() { // CCIMClient.getInstance().initSDK(getContext(), appKey, userName, extData, userId, ts, sign, new OnConnectListener() {
@Override // @Override
public void onSocketConnection() { // public void onSocketConnection() {
refreshLogView("connect success"); // refreshLogView("connect success");
} // }
//
@Override // @Override
public void onSocketDisconnection(int code) { // public void onSocketDisconnection(int code) {
//
} // }
//
//
}); // });
CCIMClient.getInstance().registerMessageListener(new OnPushMsgListener() { CCIMClient.getInstance().registerMessageListener(new OnPushMsgListener() {
......
...@@ -30,16 +30,16 @@ public class LoginViewModel extends ViewModel { ...@@ -30,16 +30,16 @@ public class LoginViewModel extends ViewModel {
public MutableLiveData<List<Long>> channelList = new MutableLiveData<>(); public MutableLiveData<List<Long>> channelList = new MutableLiveData<>();
public void login(Context context, String appKey, String appsecret, String username, String userId, String ip, int port) { public void login(Context context, String appKey, String appsecret, String username, String userId,String server, String ip, int port) {
Long id = Long.parseLong(userId); Long id = Long.parseLong(userId);
String extData = "extData"; String extData = "extData";
Long ts = System.currentTimeMillis(); Long ts = System.currentTimeMillis();
String data = appKey + "&" + id + "&" + username + "&" + extData + "&" + ts + String data = appKey + "&" + id + "&" + username + "&" + server + "&" + extData + "&" + ts +
"&" + appsecret; "&" + appsecret;
//sign计算在服务器,本地不要暴露appsecrect //sign计算在服务器,本地不要暴露appsecrect
String sign = HmacUtil.stringToSign(appsecret, data); String sign = HmacUtil.stringToSign(appsecret, data);
CCIMClient.getInstance().initServer(ip, port); CCIMClient.getInstance().initServer(ip, port);
CCIMClient.getInstance().initSDK(context, appKey, username, extData, id, ts, sign, new OnConnectListener() { CCIMClient.getInstance().initSDK(context, appKey, username, extData, id, ts, sign,server, new OnConnectListener() {
@Override @Override
public void onSocketConnection() { public void onSocketConnection() {
System.out.println("onSocketConnection"); System.out.println("onSocketConnection");
......
...@@ -63,8 +63,9 @@ public class LoginActivity extends AppCompatActivity { ...@@ -63,8 +63,9 @@ public class LoginActivity extends AppCompatActivity {
String appkey = binding.appkey.getText().toString(); String appkey = binding.appkey.getText().toString();
String appSecret = binding.appSecret.getText().toString(); String appSecret = binding.appSecret.getText().toString();
String ip = binding.ip.getText().toString(); String ip = binding.ip.getText().toString();
String server = binding.server.getText().toString();
int port = Integer.parseInt(binding.port.getText().toString()); int port = Integer.parseInt(binding.port.getText().toString());
loginViewModel.login(getApplicationContext(),appkey,appSecret,username, id,ip,port); loginViewModel.login(getApplicationContext(),appkey,appSecret,username, id,server,ip,port);
} }
}); });
} }
......
...@@ -69,7 +69,7 @@ ...@@ -69,7 +69,7 @@
android:layout_height="wrap_content" android:layout_height="wrap_content"
android:layout_marginTop="8dp" android:layout_marginTop="8dp"
android:hint="ip" android:hint="ip"
android:text="106.15.237.67" android:text="10.4.5.134"
android:imeActionLabel="@string/action_sign_in_short" android:imeActionLabel="@string/action_sign_in_short"
android:imeOptions="actionDone" android:imeOptions="actionDone"
android:selectAllOnFocus="true" android:selectAllOnFocus="true"
...@@ -91,6 +91,20 @@ ...@@ -91,6 +91,20 @@
app:layout_constraintStart_toStartOf="parent" app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/username" /> app:layout_constraintTop_toBottomOf="@+id/username" />
<EditText
android:id="@+id/server"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp"
android:hint="server"
android:text="1"
android:imeActionLabel="@string/action_sign_in_short"
android:imeOptions="actionDone"
android:selectAllOnFocus="true"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:layout_constraintTop_toBottomOf="@+id/username" />
<Button <Button
android:id="@+id/login" android:id="@+id/login"
android:layout_width="wrap_content" android:layout_width="wrap_content"
......
...@@ -87,10 +87,10 @@ public class CCIMClient { ...@@ -87,10 +87,10 @@ public class CCIMClient {
socketManager.initServer(ip, port); socketManager.initServer(ip, port);
} }
public void initSDK(Context context, String appKey, String userName, String extData, Long userId, Long ts, String sign, OnConnectListener resultCallback) { public void initSDK(Context context, String appKey, String userName, String extData, Long userId, Long ts, String sign,String server, OnConnectListener resultCallback) {
this.userId = userId; this.userId = userId;
messageManager.init(context, userId); messageManager.init(context, userId);
socketManager.initChat(context, appKey, userName, extData, userId, ts, sign, new OnClientConnectListener() { socketManager.initChat(context, appKey, userName, extData, userId, ts, sign,server, new OnClientConnectListener() {
@Override @Override
public void onSocketConnection(Chat.ConnectResponse.ClientConfig clientConfig) { public void onSocketConnection(Chat.ConnectResponse.ClientConfig clientConfig) {
maxSendMsgInterval = clientConfig.getSendMsgInterval(); maxSendMsgInterval = clientConfig.getSendMsgInterval();
......
...@@ -41,7 +41,7 @@ public class SocketManager { ...@@ -41,7 +41,7 @@ public class SocketManager {
private SocketClient socketClient; private SocketClient socketClient;
public void connectChatServer(String appKey, String userName, String extData, Long userId, Long ts, String sign) { public void connectChatServer(String appKey, String userName, String extData, Long userId, Long ts, String sign,String gameServer) {
logger.info("send connect"); logger.info("send connect");
Chat.ChatRequestMessage.Builder builder = Chat.ChatRequestMessage.newBuilder(); Chat.ChatRequestMessage.Builder builder = Chat.ChatRequestMessage.newBuilder();
Chat.ConnectRequest connectRequest = Chat.ConnectRequest.newBuilder() Chat.ConnectRequest connectRequest = Chat.ConnectRequest.newBuilder()
...@@ -50,6 +50,7 @@ public class SocketManager { ...@@ -50,6 +50,7 @@ public class SocketManager {
.setUserId(userId) .setUserId(userId)
.setExtData(extData) .setExtData(extData)
.setTs(ts) .setTs(ts)
.setGameServer(gameServer)
.setSign(sign) .setSign(sign)
.build(); .build();
builder.setConnectReq(connectRequest); builder.setConnectReq(connectRequest);
...@@ -72,7 +73,7 @@ public class SocketManager { ...@@ -72,7 +73,7 @@ public class SocketManager {
}); });
} }
public void initChat(Context context, String appKey, String userName, String extData, Long userId, Long ts, String sign, OnClientConnectListener resultCallback) { public void initChat(Context context, String appKey, String userName, String extData, Long userId, Long ts, String sign,String server, OnClientConnectListener resultCallback) {
onConnectListener = resultCallback; onConnectListener = resultCallback;
if (socketClient == null) { if (socketClient == null) {
socketClient = new NettyChatClient(context, SERVER_IP, SERVER_PORT); socketClient = new NettyChatClient(context, SERVER_IP, SERVER_PORT);
...@@ -80,7 +81,7 @@ public class SocketManager { ...@@ -80,7 +81,7 @@ public class SocketManager {
socketClient.connect(new MessageListener() { socketClient.connect(new MessageListener() {
@Override @Override
public void onServerConnect() { public void onServerConnect() {
connectChatServer(appKey, userName, extData, userId, ts, sign); connectChatServer(appKey, userName, extData, userId, ts, sign,server);
} }
@Override @Override
...@@ -106,7 +107,7 @@ public class SocketManager { ...@@ -106,7 +107,7 @@ public class SocketManager {
} }
if (data.getHeader().getCode() == Common.StatusCode.STATUS_CODE_NO_AUTH_ERROR) { //断线重连 if (data.getHeader().getCode() == Common.StatusCode.STATUS_CODE_NO_AUTH_ERROR) { //断线重连
connectChatServer(appKey, userName, extData, userId, ts, sign); connectChatServer(appKey, userName, extData, userId, ts, sign,server);
} }
int seq = data.getHeader().getSeq(); int seq = data.getHeader().getSeq();
ResultEventCallback<Chat.ChatResponseMessage> callBack = callBackManager.getCallBack(seq); ResultEventCallback<Chat.ChatResponseMessage> callBack = callBackManager.getCallBack(seq);
......
...@@ -102,8 +102,10 @@ message ConnectRequest { ...@@ -102,8 +102,10 @@ message ConnectRequest {
string ext_data = 4; string ext_data = 4;
int64 ts = 5; int64 ts = 5;
string sign = 6; string sign = 6;
string game_server = 7;
// sign使用HMAC加密算法,由接入端的服务端计算完成传给接入端的客户端 // sign使用HMAC加密算法,由接入端的服务端计算完成传给接入端的客户端
// sign = HMAC_SHA256(app_secret).digestToHex(app_key&user_id&username&ext_data&ts&app_secret) // sign = HMAC_SHA256(app_secret).digestToHex(app_key&user_id&username&game_server&ext_data&ts&app_secret)
// ts=CurrentTimeMillis (毫秒) // ts=CurrentTimeMillis (毫秒)
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment