yandexmobile / yandex-ads-sdk-android

Other
78 stars 22 forks source link

Lint Failure during lint check. AppMetricaSdkVersion rule crash. #237

Closed ikarenkov closed 2 months ago

ikarenkov commented 11 months ago

Привет! При обновлении AGP на проекте до 8.1.1 стала падать кастовая проверка Lint, которая предоставляется вашей библиотекой. Можно заигнорить ошибку, но вообще что именно делает эта проверка и на сколько безопасно её выключать?

Воспроизводится при использовании версий 5.5.0, 5.10.0, 6.0.1

Unexpected failure during lint analysis (this is a bug in lint or one of the libraries it depends on)

Message: Cannot invoke "com.android.ide.common.repository.GradleCoordinate.getVersion()" because "gradleDependency" is null

The crash seems to involve the detector com.yandex.mobileads.lint.appmetrica.AppMetricaIntervalVersionDetector. You can try disabling it with something like this: android { lint { disable "AppMetricaSdkVersion" } }

Stack: NullPointerException:IntervalVersionChecker.checkDependencyVersion(IntervalVersionChecker.java:50) ←GradleVersionDetector.checkDslPropertyAssignment(GradleVersionDetector.java:24) ←AppMetricaIntervalVersionDetector.checkDslPropertyAssignment(AppMetricaIntervalVersionDetector.java:36) ←Detector.checkDslPropertyAssignment(Detector.kt:370) ←UastGradleVisitor.handleMethodCall(UastGradleVisitor.kt:171) ←UastGradleVisitor.access$handleMethodCall(UastGradleVisitor.kt:39) ←UastGradleVisitor$visitBuildScript$1.visitCallExpression(UastGradleVisitor.kt:45) ←KotlinUFunctionCallExpression.accept(KotlinUFunctionCallExpression.kt:165) ←ImplementationUtilsKt.acceptList(implementationUtils.kt:14) ←UBlockExpression.accept(UBlockExpression.kt:21) ←ULambdaExpression.accept(ULambdaExpression.kt:40) ←ImplementationUtilsKt.acceptList(implementationUtils.kt:14) ←KotlinUFunctionCallExpression.accept(KotlinUFunctionCallExpression.kt:169) ←ImplementationUtilsKt.acceptList(implementationUtils.kt:14) ←UBlockExpression.accept(UBlockExpression.kt:21) ←UMethod.accept(UMethod.kt:45) ←ImplementationUtilsKt.acceptList(implementationUtils.kt:14) ←AbstractKotlinUClass.accept(AbstractKotlinUClass.kt:99) ←ImplementationUtilsKt.acceptList(implementationUtils.kt:14) ←UFile.accept(UFile.kt:89) ←UastLintUtilsKt.acceptSourceFile(UastLintUtils.kt:826) ←UastGradleVisitor.visitBuildScript(UastGradleVisitor.kt:42) ←LintDriver$checkBuildScripts$1.run(LintDriver.kt:1534) ←LintClient.runReadAction(LintClient.kt:1700) ←LintDriver$LintClientWrapper.runReadAction(LintDriver.kt:2867) ←LintDriver.checkBuildScripts(LintDriver.kt:1518) ←LintDriver.runFileDetectors(LintDriver.kt:1397) ←LintDriver.checkProject(LintDriver.kt:1144) ←LintDriver.checkProjectRoot(LintDriver.kt:615) ←LintDriver.access$checkProjectRoot(LintDriver.kt:170) ←LintDriver$analyzeOnly$1.invoke(LintDriver.kt:441) ←LintDriver$analyzeOnly$1.invoke(LintDriver.kt:438) ←LintDriver.doAnalyze(LintDriver.kt:497) ←LintDriver.analyzeOnly(LintDriver.kt:438) ←LintCliClient$analyzeOnly$1.invoke(LintCliClient.kt:237) ←LintCliClient$analyzeOnly$1.invoke(LintCliClient.kt:237) ←LintCliClient.run(LintCliClient.kt:279) ←LintCliClient.run$default(LintCliClient.kt:262) ←LintCliClient.analyzeOnly(LintCliClient.kt:237) ←Main.run(Main.java:1689) ←Main.run(Main.java:275) ←GeneratedMethodAccessor1584.invoke(null:-1) ←DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ←Method.invoke(Method.java:568) ←AndroidLintWorkAction.invokeLintMainRunMethod(AndroidLintWorkAction.kt:98) ←AndroidLintWorkAction.runLint(AndroidLintWorkAction.kt:87) ←AndroidLintWorkAction.execute(AndroidLintWorkAction.kt:62) ←DefaultWorkerServer.execute(DefaultWorkerServer.java:63) ←NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:66) ←NoIsolationWorkerFactory$1$1.create(NoIsolationWorkerFactory.java:62) ←ClassLoaderUtils.executeInClassloader(ClassLoaderUtils.java:100) ←NoIsolationWorkerFactory$1.lambda$execute$0(NoIsolationWorkerFactory.java:62) ←AbstractWorker$1.call(AbstractWorker.java:44) ←AbstractWorker$1.call(AbstractWorker.java:41) ←DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:204) ←DefaultBuildOperationRunner$CallableBuildOperationWorker.execute(DefaultBuildOperationRunner.java:199) ←DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:66) ←DefaultBuildOperationRunner$2.execute(DefaultBuildOperationRunner.java:59) ←DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:157) ←DefaultBuildOperationRunner.execute(DefaultBuildOperationRunner.java:59) ←DefaultBuildOperationRunner.call(DefaultBuildOperationRunner.java:53) ←DefaultBuildOperationExecutor.call(DefaultBuildOperationExecutor.java:73) ←AbstractWorker.executeWrappedInBuildOperation(AbstractWorker.java:41) ←NoIsolationWorkerFactory$1.execute(NoIsolationWorkerFactory.java:59) ←DefaultWorkerExecutor.lambda$submitWork$0(DefaultWorkerExecutor.java:170) ←FutureTask.run(FutureTask.java:264) ←DefaultConditionalExecutionQueue$ExecutionRunner.runExecution(DefaultConditionalExecutionQueue.java:187) ←DefaultConditionalExecutionQueue$ExecutionRunner.access$700(DefaultConditionalExecutionQueue.java:120) ←DefaultConditionalExecutionQueue$ExecutionRunner$1.run(DefaultConditionalExecutionQueue.java:162) ←Factories$1.create(Factories.java:31) ←DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:264) ←DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:128) ←DefaultWorkerLeaseService.runAsWorkerThread(DefaultWorkerLeaseService.java:133) ←DefaultConditionalExecutionQueue$ExecutionRunner.runBatch(DefaultConditionalExecutionQueue.java:157) ←DefaultConditionalExecutionQueue$ExecutionRunner.run(DefaultConditionalExecutionQueue.java:126) ←Executors$RunnableAdapter.call(Executors.java:539) ←FutureTask.run(FutureTask.java:264) ←ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:64) ←AbstractManagedExecutor$1.run(AbstractManagedExecutor.java:47) ←ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136) ←ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635) ←Thread.run(Thread.java:833)

mobile-ads-github commented 11 months ago

Спасибо за Ваше обращение, для разбора создана задача с номером PCODESUP-2463. Мы ознакомимся и вернемся с ответом в течение 2 дней, возможно запросим дополнительную информацию.

Thank you for your message, a task with the number PCODESUP-2463 has been created for analysis. We will get acquainted and return with the answer within 2 days, we may request additional information.

mobile-ads-github commented 11 months ago

Добрый день! Исправили проблему в версии 6.1.0. Проверьте пожалуйста и сообщите результат