gpt4 book ai didi

android - java.net.UnknownServiceException : CLEARTEXT communication to t. main.wedeep.com.cn 网络安全策略不允许

转载 作者:行者123 更新时间:2023-12-03 18:36:21 24 4
gpt4 key购买 nike

当我使用 mockhttpserver 测试 http 请求时出现上述错误,以下代码是我创建服务的方式。

   fun <T> getService(clazz: Class<T>): T {
val client = OkHttpClient.Builder().addInterceptor(HeaderInterceptor()).addInterceptor(HttpLoggingInterceptor().apply { level = if (BuildConfig.DEBUG) HttpLoggingInterceptor.Level.BODY else HttpLoggingInterceptor.Level.NONE })
.build()
return Retrofit.Builder()
.baseUrl(mockWebServer.url(""))
.client(client)
.addConverterFactory(GsonConverterFactory.create(GSON))
.build()
.create(clazz)
}
这是我的测试代码。
@UninstallModules(HomePageDataModule::class)
@HiltAndroidTest
class TestHomePageViewModel {


private lateinit var viewModel: HomePageViewModel

@get:Rule
var hiltRule = HiltAndroidRule(this)

@Inject
lateinit var cpd: CompositionDao

@Inject
lateinit var csd: CompositionsDao

@Inject
lateinit var hpds: HomePageDataSource

@Inject
lateinit var ss :HomePageService

@Before
fun init() {
hiltRule.inject()
viewModel = HomePageViewModel(HomeCompositionsRepository(cpd, csd, hpds, Util.GSON))

}





@Test
fun testObserveHomeData() {

val data = Util.getFileString("mainpage.json")
val rr = GSON.fromJson(data,Array<HomePreviewView>::class.java)
println(rr)
enqueueResponse("mainpage.json")
runBlocking {
val result = ss.getHomeData()
Assert.assertNotEquals(rr.size,result.body()!!.size)
}
}
除了运行我的单元测试代码外,我的应用程序一切正常。
有一个类似的 problem ,但我的问题与那个问题相比有一点不同。
我尝试过类似问题的很多方法,但没有奏效。
PS:如果测试代码在 Junit4Test 而不是 AndroidJunit4Test 上运行,它可以正常工作。但现在我需要执行集成测试。所以这部分代码需要在AndroidJunit4Test上执行

最佳答案

解决方案1)
将以下属性添加到 <application AndroidManifest.xml 中的标记:

android:usesCleartextTraffic="true"
解决方案2)
添加 android:networkSecurityConfig="@xml/network_security_config"<application标记 app/src/main/AndroidManifest.xml :
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:networkSecurityConfig="@xml/network_security_config"
android:theme="@style/AppTheme">
对应的 network_security_config.xmlapp/src/main/res/xml/ :
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true" />
</network-security-config>

关于android - java.net.UnknownServiceException : CLEARTEXT communication to t. main.wedeep.com.cn 网络安全策略不允许,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63032000/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com