为动态模块获取 SplitInstallErrorCode.MODULE_UNAVAILABLE
Getting SplitInstallErrorCode.MODULE_UNAVAILABLE for dynamic module
我在尝试安装动态模块时遇到以下错误 SplitInstallErrorCode.MODULE_UNAVAILABLE
。我已经在使用 Google 播放内部应用程序共享来测试 aab
文件,但仍然可以。
这是动态功能清单文件:
<dist:module
dist:title="@string/module_investment">
<dist:delivery>
<dist:on-demand />
</dist:delivery>
<dist:fusing dist:include="true" />
</dist:module>
这是我开始下载的方式:
private val moduleInvestment by lazy { getString(R.string.module_investment) }
splitInstallRequest = SplitInstallRequest
.newBuilder()
.addModule(moduleInvestment)
.build()
splitInstallManager.startInstall(splitInstallRequest)
.addOnSuccessListener { sessionId -> mySessionId = sessionId }
.addOnFailureListener { exception ->
when ((exception as SplitInstallException).errorCode) {
SplitInstallErrorCode.NETWORK_ERROR -> {
}
SplitInstallErrorCode.ACTIVE_SESSIONS_LIMIT_EXCEEDED ->
checkForActiveDownloads()
SplitInstallErrorCode.MODULE_UNAVAILABLE ->
Toast.makeText(
requireActivity(),
"You don't have access to $moduleInvestment module",
Toast.LENGTH_LONG).show()
}
}
我该如何解决这个问题?
您在SplitInstallRequest 中传递的值不应该是动态功能模块的标题,而是它的名称。动态特性模块的名字也是Gradle模块的名字,你在Gradle配置里也设置了android.dynamicFeatures
.
希望对您有所帮助,
我在尝试安装动态模块时遇到以下错误 SplitInstallErrorCode.MODULE_UNAVAILABLE
。我已经在使用 Google 播放内部应用程序共享来测试 aab
文件,但仍然可以。
这是动态功能清单文件:
<dist:module
dist:title="@string/module_investment">
<dist:delivery>
<dist:on-demand />
</dist:delivery>
<dist:fusing dist:include="true" />
</dist:module>
这是我开始下载的方式:
private val moduleInvestment by lazy { getString(R.string.module_investment) }
splitInstallRequest = SplitInstallRequest
.newBuilder()
.addModule(moduleInvestment)
.build()
splitInstallManager.startInstall(splitInstallRequest)
.addOnSuccessListener { sessionId -> mySessionId = sessionId }
.addOnFailureListener { exception ->
when ((exception as SplitInstallException).errorCode) {
SplitInstallErrorCode.NETWORK_ERROR -> {
}
SplitInstallErrorCode.ACTIVE_SESSIONS_LIMIT_EXCEEDED ->
checkForActiveDownloads()
SplitInstallErrorCode.MODULE_UNAVAILABLE ->
Toast.makeText(
requireActivity(),
"You don't have access to $moduleInvestment module",
Toast.LENGTH_LONG).show()
}
}
我该如何解决这个问题?
您在SplitInstallRequest 中传递的值不应该是动态功能模块的标题,而是它的名称。动态特性模块的名字也是Gradle模块的名字,你在Gradle配置里也设置了android.dynamicFeatures
.
希望对您有所帮助,