У меня есть приложение для Android, и я хочу установить новый модуль из приложения Instant.Я использую SplitInstallManager
для этого.После запроса установки я получаю SplitInstallSessionStatus.FAILED
с кодом ошибки = -100.Согласно документации андроида, код ошибки -100 является внутренней ошибкой.(https://developer.android.com/reference/com/google/android/play/core/splitinstall/model/SplitInstallErrorCode)
Это для модульного приложения для Android. У меня есть несколько модулей (около десяти), но только один модуль с поддержкой мгновенных приложений и один модуль с поддержкой onDemand (тот, который я пытаюсь установить)
fun installAndLaunchPlayer(manager: SplitInstallManager, videoId: String) {
var mySessionId = 0
if (manager.installedModules.contains("player")) {
_onPlayerInstalledSuccessful.value = videoId
return
}
val request = SplitInstallRequest.newBuilder()
.addModule("player")
.build()
manager.registerListener(object : SplitInstallStateUpdatedListener {
override fun onStateUpdate(state: SplitInstallSessionState) {
if (state.status() == SplitInstallSessionStatus.FAILED && state.errorCode() == SplitInstallErrorCode.SERVICE_DIED) {
// Retry the request.
return
}
if (state.sessionId() == mySessionId) {
when (state.status()) {
SplitInstallSessionStatus.DOWNLOADING -> {
}
SplitInstallSessionStatus.INSTALLED -> {
_onPlayerInstalledSuccessful.value = videoId
}
SplitInstallSessionStatus.FAILED -> {
// HERE IS WHERE I GET THE ERROR CODE = -100
state.errorCode()
_onPlayerInstalledFailure.value = "failed to install module"
}
}
}
}
})
manager
.startInstall(request)
.addOnSuccessListener { mySessionId = it }
.addOnFailureListener {
_onPlayerInstalledFailure.value = it.message
}
}
Я никогда не получаю никаких других SplitInstallSessionStatus.FAILED
кроме SplitInstallSessionStatus.PENDING
, которые я получаю в начале запроса на установку. Вот журнал ошибки:
SplitInstallSessionState{sessionId=42, status=6, errorCode=-100, bytesDownloaded=0, totalBytesToDownload=0, moduleNamesNullable=[player], languagesNullable=null, resolutionIntent=null, splitFileIntents=null}
Можетпожалуйста, помогите мне?