tongmengxiao 1 год назад
Родитель
Сommit
d03d86a0b0

+ 2 - 2
app/src/main/java/com/swago/app/SplashVm.kt

@@ -51,8 +51,8 @@ class SplashVm(application: Application) : BaseViewModel(application) {
     fun getApiDomain() {
     fun getApiDomain() {
         requestData2(false) {
         requestData2(false) {
             requestData {
             requestData {
-                val domainData = ApiManager.configApi.getApiDomain()
-                setBaseUrl(domainData.host)
+//                val domainData = ApiManager.configApi.getApiDomain()
+                setBaseUrl(UrlConstant.BASE_URL)
                 RetrofitManager.resetUrl()
                 RetrofitManager.resetUrl()
 
 
                 val data = ApiManager.configApi.getAppConfig()
                 val data = ApiManager.configApi.getAppConfig()

BIN
baseswago/src/main/assets/tt.me-live.cn_bundle.p12


+ 30 - 0
baseswago/src/main/java/com/swago/baseswago/http/RetrofitManager.kt

@@ -7,7 +7,13 @@ import com.swago.baseswago.constant.UrlConstant
 import com.swago.baseswago.util.AppContext
 import com.swago.baseswago.util.AppContext
 import okhttp3.OkHttpClient
 import okhttp3.OkHttpClient
 import retrofit2.Retrofit
 import retrofit2.Retrofit
+import java.io.InputStream
+import java.security.KeyStore
 import java.util.concurrent.TimeUnit
 import java.util.concurrent.TimeUnit
+import javax.net.ssl.KeyManagerFactory
+import javax.net.ssl.SSLContext
+import javax.net.ssl.TrustManagerFactory
+import javax.net.ssl.X509TrustManager
 
 
 /**
 /**
  *@date 2021/8/14 14:05
  *@date 2021/8/14 14:05
@@ -26,6 +32,7 @@ object RetrofitManager {
         if (BuildConfig.DEBUG) {
         if (BuildConfig.DEBUG) {
             okHttpClientBuilder.addInterceptor(ChuckerInterceptor(AppContext.getContext()))
             okHttpClientBuilder.addInterceptor(ChuckerInterceptor(AppContext.getContext()))
         }
         }
+        setSSLSocketFactory(okHttpClientBuilder)
         okHttpClientBuilder.addInterceptor(SwagoInterceptor())
         okHttpClientBuilder.addInterceptor(SwagoInterceptor())
         okHttpClientBuilder.retryOnConnectionFailure(true)
         okHttpClientBuilder.retryOnConnectionFailure(true)
         okHttpClientBuilder.connectTimeout(30000, TimeUnit.MILLISECONDS)
         okHttpClientBuilder.connectTimeout(30000, TimeUnit.MILLISECONDS)
@@ -46,4 +53,27 @@ object RetrofitManager {
             .build()
             .build()
     }
     }
 
 
+    private fun setSSLSocketFactory(okHttpClientBuilder: OkHttpClient.Builder) {
+        // 加载 PKCS12 格式的密钥库
+        val inputStream: InputStream = AppContext.getContext().assets.open("tt.me-live.cn_bundle.p12")
+        val keyStore = KeyStore.getInstance("PKCS12")
+        val keyStorePassword = "zxcvbn" // 密钥库密码
+        keyStore.load(inputStream, keyStorePassword.toCharArray())
+
+        // 用于从密钥库中获取密钥
+        val keyManagerFactory = KeyManagerFactory.getInstance(KeyManagerFactory.getDefaultAlgorithm())
+        keyManagerFactory.init(keyStore, keyStorePassword.toCharArray())
+
+        val trustManagerFactory =
+            TrustManagerFactory.getInstance(TrustManagerFactory.getDefaultAlgorithm())
+        trustManagerFactory.init(keyStore)
+
+        // 创建 SSLContext,用于建立安全连接
+        val sslContext = SSLContext.getInstance("TLS")
+        sslContext.init(keyManagerFactory.keyManagers, trustManagerFactory.trustManagers, null)
+        okHttpClientBuilder.sslSocketFactory(
+            sslContext.socketFactory ,
+            (trustManagerFactory.trustManagers[0] as X509TrustManager
+                    ))
+    }
 }
 }

+ 6 - 2
room/src/main/java/com/swago/room/vm/MsgVm.kt

@@ -671,8 +671,10 @@ class MsgVm(application: Application) : AbsMsgVm(application) {
                             imGiftModel.senderName = it.senderName
                             imGiftModel.senderName = it.senderName
                             val receiverName = StringBuffer()
                             val receiverName = StringBuffer()
                             it.receivers.forEach {
                             it.receivers.forEach {
-                                receiverName.append("${it.receiverName} ")
+                                receiverName.append("${it.receiverName} ,")
                             }
                             }
+                            if (it.receivers.isNotEmpty())
+                                receiverName.deleteCharAt(receiverName.length - 1)
                             imGiftModel.receiverName = receiverName.toString()
                             imGiftModel.receiverName = receiverName.toString()
                             imGiftModel.giftNum = it.giftNum
                             imGiftModel.giftNum = it.giftNum
                             imGiftModel.multiple = it.multiple
                             imGiftModel.multiple = it.multiple
@@ -700,8 +702,10 @@ class MsgVm(application: Application) : AbsMsgVm(application) {
                                 imGiftModel.multiple = it.multiple
                                 imGiftModel.multiple = it.multiple
                                 val receiverName = StringBuffer()
                                 val receiverName = StringBuffer()
                                 it.receivers.forEach {
                                 it.receivers.forEach {
-                                    receiverName.append("${it.receiverName} ")
+                                    receiverName.append("${it.receiverName} ,")
                                 }
                                 }
+                                if (it.receivers.isNotEmpty())
+                                    receiverName.deleteCharAt(receiverName.length - 1)
                                 imGiftModel.receiverName = receiverName.toString()
                                 imGiftModel.receiverName = receiverName.toString()
 
 
                                 playSvgUrl?.invoke(imGiftModel ,true)
                                 playSvgUrl?.invoke(imGiftModel ,true)