aapt报错node_modules_reactnavigation_src_views_assets_backicon.png: error: Duplicate file.

错误如下:

:app:processDevReleaseResources

/Users/meicai-cdclone/jenkins/workspace/app-android-supplier_app-rn/android/app/build/intermediates/res/merged/dev/release/drawable-hdpi-v4/node_modules_reactnavigation_src_views_assets_backicon.png: error: Duplicate file.

/Users/meicai-cdclone/jenkins/workspace/app-android-supplier_app-rn/android/app/build/intermediates/res/merged/dev/release/drawable-hdpi/node_modules_reactnavigation_src_views_assets_backicon.png: Original is here. The version qualifier may be implied.

:app:processDevReleaseResources FAILED

FAILURE: Build failed with an exception.

  • What went wrong:

Execution failed for task ‘:app:processDevReleaseResources’.

Failed to process resources, see aapt output above for details.

  • Try:

Run with –info or –debug option to get more log output. Run with –scan to get full insights.

  • Exception is:

org.gradle.api.tasks.TaskExecutionException: Execution failed for task ‘:app:processDevReleaseResources’.

at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:100)

at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.execute(ExecuteActionsTaskExecuter.java:70)

at org.gradle.api.internal.tasks.execution.OutputDirectoryCreatingTaskExecuter.execute(OutputDirectoryCreatingTaskExecuter.java:51)

at org.gradle.api.internal.tasks.execution.SkipUpToDateTaskExecuter.execute(SkipUpToDateTaskExecuter.java:62)

at org.gradle.api.internal.tasks.execution.ResolveTaskOutputCachingStateExecuter.execute(ResolveTaskOutputCachingStateExecuter.java:54)

at org.gradle.api.internal.tasks.execution.ResolveBuildCacheKeyExecuter.execute(ResolveBuildCacheKeyExecuter.java:61)

at org.gradle.api.internal.tasks.execution.ValidatingTaskExecuter.execute(ValidatingTaskExecuter.java:60)

at org.gradle.api.internal.tasks.execution.SkipEmptySourceFilesTaskExecuter.execute(SkipEmptySourceFilesTaskExecuter.java:97)

at org.gradle.api.internal.tasks.execution.CleanupStaleOutputsExecuter.execute(CleanupStaleOutputsExecuter.java:87)

at org.gradle.api.internal.tasks.execution.ResolveTaskArtifactStateTaskExecuter.execute(ResolveTaskArtifactStateTaskExecuter.java:52)

at org.gradle.api.internal.tasks.execution.SkipTaskWithNoActionsExecuter.execute(SkipTaskWithNoActionsExecuter.java:52)

at org.gradle.api.internal.tasks.execution.SkipOnlyIfTaskExecuter.execute(SkipOnlyIfTaskExecuter.java:54)

at org.gradle.api.internal.tasks.execution.ExecuteAtMostOnceTaskExecuter.execute(ExecuteAtMostOnceTaskExecuter.java:43)

at org.gradle.api.internal.tasks.execution.CatchExceptionTaskExecuter.execute(CatchExceptionTaskExecuter.java:34)

at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter EventFiringTaskWorker E v e n t F i r i n g T a s k W o r k e r 1.run(DefaultTaskGraphExecuter.java:248)

at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)

at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)

at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)

at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110)

at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:241)

at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter$EventFiringTaskWorker.execute(DefaultTaskGraphExecuter.java:230)

at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.processTask(DefaultTaskPlanExecutor.java:123)

at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor TaskExecutorWorker.access T a s k E x e c u t o r W o r k e r . a c c e s s 200(DefaultTaskPlanExecutor.java:79)

at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor TaskExecutorWorker T a s k E x e c u t o r W o r k e r 1.execute(DefaultTaskPlanExecutor.java:104)

at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor TaskExecutorWorker T a s k E x e c u t o r W o r k e r 1.execute(DefaultTaskPlanExecutor.java:98)

at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.execute(DefaultTaskExecutionPlan.java:626)

at org.gradle.execution.taskgraph.DefaultTaskExecutionPlan.executeWithTask(DefaultTaskExecutionPlan.java:581)

at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor$TaskExecutorWorker.run(DefaultTaskPlanExecutor.java:98)

at org.gradle.execution.taskgraph.DefaultTaskPlanExecutor.process(DefaultTaskPlanExecutor.java:59)

at org.gradle.execution.taskgraph.DefaultTaskGraphExecuter.execute(DefaultTaskGraphExecuter.java:128)

at org.gradle.execution.SelectedTaskExecutionAction.execute(SelectedTaskExecutionAction.java:37)

at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)

at org.gradle.execution.DefaultBuildExecuter.access$000(DefaultBuildExecuter.java:23)

at org.gradle.execution.DefaultBuildExecuter$1.proceed(DefaultBuildExecuter.java:43)

at org.gradle.execution.DryRunBuildExecutionAction.execute(DryRunBuildExecutionAction.java:46)

at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:37)

at org.gradle.execution.DefaultBuildExecuter.execute(DefaultBuildExecuter.java:30)

at org.gradle.initialization.DefaultGradleLauncher$ExecuteTasks.run(DefaultGradleLauncher.java:314)

at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)

at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)

at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)

at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110)

at org.gradle.initialization.DefaultGradleLauncher.runTasks(DefaultGradleLauncher.java:204)

at org.gradle.initialization.DefaultGradleLauncher.doBuildStages(DefaultGradleLauncher.java:134)

at org.gradle.initialization.DefaultGradleLauncher.executeTasks(DefaultGradleLauncher.java:109)

at org.gradle.internal.invocation.GradleBuildController$1.call(GradleBuildController.java:78)

at org.gradle.internal.invocation.GradleBuildController$1.call(GradleBuildController.java:75)

at org.gradle.internal.work.DefaultWorkerLeaseService.withLocks(DefaultWorkerLeaseService.java:152)

at org.gradle.internal.invocation.GradleBuildController.doBuild(GradleBuildController.java:100)

at org.gradle.internal.invocation.GradleBuildController.run(GradleBuildController.java:75)

at org.gradle.tooling.internal.provider.ExecuteBuildActionRunner.run(ExecuteBuildActionRunner.java:28)

at org.gradle.launcher.exec.ChainingBuildActionRunner.run(ChainingBuildActionRunner.java:35)

at org.gradle.tooling.internal.provider.ValidatingBuildActionRunner.run(ValidatingBuildActionRunner.java:32)

at org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner$1.run(RunAsBuildOperationBuildActionRunner.java:43)

at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)

at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)

at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)

at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110)

at org.gradle.launcher.exec.RunAsBuildOperationBuildActionRunner.run(RunAsBuildOperationBuildActionRunner.java:40)

at org.gradle.tooling.internal.provider.SubscribableBuildActionRunner.run(SubscribableBuildActionRunner.java:51)

at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:47)

at org.gradle.launcher.exec.InProcessBuildActionExecuter.execute(InProcessBuildActionExecuter.java:30)

at org.gradle.launcher.exec.BuildTreeScopeBuildActionExecuter.execute(BuildTreeScopeBuildActionExecuter.java:39)

at org.gradle.launcher.exec.BuildTreeScopeBuildActionExecuter.execute(BuildTreeScopeBuildActionExecuter.java:25)

at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:80)

at org.gradle.tooling.internal.provider.ContinuousBuildActionExecuter.execute(ContinuousBuildActionExecuter.java:53)

at org.gradle.tooling.internal.provider.ServicesSetupBuildActionExecuter.execute(ServicesSetupBuildActionExecuter.java:57)

at org.gradle.tooling.internal.provider.ServicesSetupBuildActionExecuter.execute(ServicesSetupBuildActionExecuter.java:32)

at org.gradle.tooling.internal.provider.GradleThreadBuildActionExecuter.execute(GradleThreadBuildActionExecuter.java:36)

at org.gradle.tooling.internal.provider.GradleThreadBuildActionExecuter.execute(GradleThreadBuildActionExecuter.java:25)

at org.gradle.tooling.internal.provider.ParallelismConfigurationBuildActionExecuter.execute(ParallelismConfigurationBuildActionExecuter.java:43)

at org.gradle.tooling.internal.provider.ParallelismConfigurationBuildActionExecuter.execute(ParallelismConfigurationBuildActionExecuter.java:29)

at org.gradle.tooling.internal.provider.StartParamsValidatingActionExecuter.execute(StartParamsValidatingActionExecuter.java:69)

at org.gradle.tooling.internal.provider.StartParamsValidatingActionExecuter.execute(StartParamsValidatingActionExecuter.java:30)

at org.gradle.tooling.internal.provider.SessionFailureReportingActionExecuter.execute(SessionFailureReportingActionExecuter.java:59)

at org.gradle.tooling.internal.provider.SessionFailureReportingActionExecuter.execute(SessionFailureReportingActionExecuter.java:44)

at org.gradle.tooling.internal.provider.SetupLoggingActionExecuter.execute(SetupLoggingActionExecuter.java:45)

at org.gradle.tooling.internal.provider.SetupLoggingActionExecuter.execute(SetupLoggingActionExecuter.java:30)

at org.gradle.launcher.daemon.server.exec.ExecuteBuild.doBuild(ExecuteBuild.java:67)

at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)

at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)

at org.gradle.launcher.daemon.server.exec.WatchForDisconnection.execute(WatchForDisconnection.java:37)

at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)

at org.gradle.launcher.daemon.server.exec.ResetDeprecationLogger.execute(ResetDeprecationLogger.java:26)

at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)

at org.gradle.launcher.daemon.server.exec.RequestStopIfSingleUsedDaemon.execute(RequestStopIfSingleUsedDaemon.java:34)

at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)

at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:74)

at org.gradle.launcher.daemon.server.exec.ForwardClientInput$2.call(ForwardClientInput.java:72)

at org.gradle.util.Swapper.swap(Swapper.java:38)

at org.gradle.launcher.daemon.server.exec.ForwardClientInput.execute(ForwardClientInput.java:72)

at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)

at org.gradle.launcher.daemon.server.exec.LogAndCheckHealth.execute(LogAndCheckHealth.java:55)

at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)

at org.gradle.launcher.daemon.server.exec.LogToClient.doBuild(LogToClient.java:62)

at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)

at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)

at org.gradle.launcher.daemon.server.exec.EstablishBuildEnvironment.doBuild(EstablishBuildEnvironment.java:82)

at org.gradle.launcher.daemon.server.exec.BuildCommandOnly.execute(BuildCommandOnly.java:36)

at org.gradle.launcher.daemon.server.api.DaemonCommandExecution.proceed(DaemonCommandExecution.java:122)

at org.gradle.launcher.daemon.server.exec.StartBuildOrRespondWithBusy$1.run(StartBuildOrRespondWithBusy.java:50)

at org.gradle.launcher.daemon.server.DaemonStateCoordinator$1.run(DaemonStateCoordinator.java:295)

at org.gradle.internal.concurrent.ExecutorPolicy$CatchAndRecordFailures.onExecute(ExecutorPolicy.java:63)

at org.gradle.internal.concurrent.ManagedExecutorImpl$1.run(ManagedExecutorImpl.java:46)

at org.gradle.internal.concurrent.ThreadFactoryImpl$ManagedThreadRunnable.run(ThreadFactoryImpl.java:55)

Caused by: org.gradle.tooling.BuildException: Failed to process resources, see aapt output above for details.

at com.android.build.gradle.internal.res.LinkApplicationAndroidResourcesTask.invokeAaptForSplit(LinkApplicationAndroidResourcesTask.java:512)

at com.android.build.gradle.internal.res.LinkApplicationAndroidResourcesTask.doFullTaskAction(LinkApplicationAndroidResourcesTask.java:249)

at com.android.build.gradle.internal.tasks.IncrementalTask.taskAction(IncrementalTask.java:106)

at org.gradle.internal.reflect.JavaMethod.invoke(JavaMethod.java:73)

at org.gradle.api.internal.project.taskfactory.IncrementalTaskAction.doExecute(IncrementalTaskAction.java:46)

at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:39)

at org.gradle.api.internal.project.taskfactory.StandardTaskAction.execute(StandardTaskAction.java:26)

at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter$1.run(ExecuteActionsTaskExecuter.java:121)

at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:336)

at org.gradle.internal.progress.DefaultBuildOperationExecutor$RunnableBuildOperationWorker.execute(DefaultBuildOperationExecutor.java:328)

at org.gradle.internal.progress.DefaultBuildOperationExecutor.execute(DefaultBuildOperationExecutor.java:199)

at org.gradle.internal.progress.DefaultBuildOperationExecutor.run(DefaultBuildOperationExecutor.java:110)

at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeAction(ExecuteActionsTaskExecuter.java:110)

at org.gradle.api.internal.tasks.execution.ExecuteActionsTaskExecuter.executeActions(ExecuteActionsTaskExecuter.java:92)

… 104 more

Caused by: com.android.ide.common.process.ProcessException: Failed to execute aapt

at com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:809)

at com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:797)

at com.android.build.gradle.internal.res.LinkApplicationAndroidResourcesTask.invokeAaptForSplit(LinkApplicationAndroidResourcesTask.java:491)

… 117 more

Caused by: java.util.concurrent.ExecutionException: com.android.ide.common.process.ProcessException: Error while executing process /Users/meicai-cdclone/Library/Android/sdk/build-tools/27.0.3/aapt with arguments {package -f –no-crunch -I /Users/meicai-cdclone/Library/Android/sdk/platforms/android-27/android.jar -M /Users/meicai-cdclone/jenkins/workspace/app-android-supplier_app-rn/android/app/build/intermediates/manifests/full/dev/release/AndroidManifest.xml -S /Users/meicai-cdclone/jenkins/workspace/app-android-supplier_app-rn/android/app/build/intermediates/res/merged/dev/release -m -J /Users/meicai-cdclone/jenkins/workspace/app-android-supplier_app-rn/android/app/build/generated/source/r/dev/release -F /Users/meicai-cdclone/jenkins/workspace/app-android-supplier_app-rn/android/app/build/intermediates/res/dev/release/resources-devRelease.ap_ -D /Users/meicai-cdclone/jenkins/workspace/app-android-supplier_app-rn/android/app/build/intermediates/multi-dex/dev/release/manifest_keep.txt –custom-package com.supplier_app -0 apk –output-text-symbols /Users/meicai-cdclone/jenkins/workspace/app-android-supplier_app-rn/android/app/build/intermediates/symbols/dev/release –no-version-vectors}

at com.google.common.util.concurrent.AbstractFuture.getDoneValue(AbstractFuture.java:503)

at com.google.common.util.concurrent.AbstractFuture.get(AbstractFuture.java:482)

at com.google.common.util.concurrent.AbstractFuture$TrustedFuture.get(AbstractFuture.java:79)

at com.android.builder.internal.aapt.AbstractAapt.link(AbstractAapt.java:34)

at com.android.builder.core.AndroidBuilder.processResources(AndroidBuilder.java:807)

… 119 more

Caused by: com.android.ide.common.process.ProcessException: Error while executing process /Users/meicai-cdclone/Library/Android/sdk/build-tools/27.0.3/aapt with arguments {package -f –no-crunch -I /Users/meicai-cdclone/Library/Android/sdk/platforms/android-27/android.jar -M /Users/meicai-cdclone/jenkins/workspace/app-android-supplier_app-rn/android/app/build/intermediates/manifests/full/dev/release/AndroidManifest.xml -S /Users/meicai-cdclone/jenkins/workspace/app-android-supplier_app-rn/android/app/build/intermediates/res/merged/dev/release -m -J /Users/meicai-cdclone/jenkins/workspace/app-android-supplier_app-rn/android/app/build/generated/source/r/dev/release -F /Users/meicai-cdclone/jenkins/workspace/app-android-supplier_app-rn/android/app/build/intermediates/res/dev/release/resources-devRelease.ap_ -D /Users/meicai-cdclone/jenkins/workspace/app-android-supplier_app-rn/android/app/build/intermediates/multi-dex/dev/release/manifest_keep.txt –custom-package com.supplier_app -0 apk –output-text-symbols /Users/meicai-cdclone/jenkins/workspace/app-android-supplier_app-rn/android/app/build/intermediates/symbols/dev/release –no-version-vectors}

at com.android.build.gradle.internal.process.GradleProcessResult.buildProcessException(GradleProcessResult.java:73)

at com.android.build.gradle.internal.process.GradleProcessResult.assertNormalExitValue(GradleProcessResult.java:48)

at com.android.builder.internal.aapt.AbstractProcessExecutionAapt$1.onSuccess(AbstractProcessExecutionAapt.java:78)

at com.android.builder.internal.aapt.AbstractProcessExecutionAapt$1.onSuccess(AbstractProcessExecutionAapt.java:74)

at com.google.common.util.concurrent.Futures$CallbackListener.run(Futures.java:1237)

at com.google.common.util.concurrent.MoreExecutors$DirectExecutor.execute(MoreExecutors.java:399)

at com.google.common.util.concurrent.AbstractFuture.executeListener(AbstractFuture.java:911)

at com.google.common.util.concurrent.AbstractFuture.complete(AbstractFuture.java:822)

at com.google.common.util.concurrent.AbstractFuture.set(AbstractFuture.java:664)

at com.google.common.util.concurrent.SettableFuture.set(SettableFuture.java:48)

at com.android.build.gradle.internal.process.GradleProcessExecutor$1.run(GradleProcessExecutor.java:58)

Caused by: org.gradle.process.internal.ExecException: Process ‘command ‘/Users/meicai-cdclone/Library/Android/sdk/build-tools/27.0.3/aapt” finished with non-zero exit value 1

at org.gradle.process.internal.DefaultExecHandle$ExecResultImpl.assertNormalExitValue(DefaultExecHandle.java:382)

at com.android.build.gradle.internal.process.GradleProcessResult.assertNormalExitValue(GradleProcessResult.java:46)

… 9 more

  • Get more help athttps://help.gradle.org

BUILD FAILED in 10m 49s

83 actionable tasks: 13 executed, 70 up-to-date

根本原因是,RNnode下会编译一套资源,而RN的打包会把这套资源也打包给android,最终就会出现两套,暂时的解决方法如下:ReactNative ./gradlew assembleRelease打包失败Duplicate file - 优快云博客

把:node_modules/react-native/local-cli/bundle/assetPathUtils.js这个文件里面getAndroidAssetSuffix方法改为

function getAndroidAssetSuffix(scale) {

switch (scale) {

case 0.75: return 'ldpi-v4';

case 1: return 'mdpi-v4';

case 1.5: return 'hdpi-v4';

case 2: return 'xhdpi-v4';

case 3: return 'xxhdpi-v4';

case 4: return 'xxxhdpi-v4';

}

}

第二种方法在连接里,不在重复,这个方法不是根本解决方法,后面可能还会遇到问题,到时再解决,或者RN给出解决办法的版本就采用他

### 关于 AAPT 错误 `android:layout_constraintStart_toStartOf` 属性未找到的解决方案 当开发人员在 Android 项目中遇到类似于 `AAPT error attribute android:layout_constraintStart_toStartOf not found` 的错误时,通常是因为项目的构建工具链或依赖项配置存在问题。以下是可能的原因及其对应的解决方法: #### 可能原因及解决办法 1. **ConstraintLayout 版本过低** 如果使用的 ConstraintLayout 库版本较低,则某些较新的属性(如 `android:layout_constraintStart_toStartOf`)可能不被支持。建议升级到最新稳定版的 ConstraintLayout 库[^3]。 修改 `build.gradle` 文件中的依赖部分: ```groovy dependencies { implementation 'com.android.support.constraint:constraint-layout:2.0.4' // 或更高版本 } ``` 2. **Gradle 插件版本不匹配** Gradle 构建插件版本与所使用的 Android SDK 工具版本可能存在冲突。如果 Gradle 插件版本低于所需的支持级别,则可能导致此类问题。确保使用最新的 Gradle 和 Android Gradle Plugin (AGP)[^2]。 更新 `build.gradle` 中的 AGP 版本: ```groovy plugins { id 'com.android.application' version '7.0.0' apply false // 或更新至兼容版本 } ``` 3. **XML 命名空间声明缺失** 在 XML 文件中定义约束布局时,如果没有正确声明命名空间,也可能引发此错误。确认文件顶部已包含以下命名空间声明: ```xml xmlns:app="http://schemas.android.com/apk/res-auto" ``` 此外,在实际使用该属性的地方应改为前缀形式: ```xml app:layout_constraintStart_toStartOf="@id/some_id" ``` 4. **清理并重建项目** 缓存数据损坏有时也会引起类似的编译失败情况。尝试执行以下命令来清除缓存并重新同步项目结构[^1]: ```bash ./gradlew clean assembleDebug --refresh-dependencies ``` 5. **检查 PNG 资源合法性** 尽管这并非直接关联上述特定错误消息,但如果存在非法字符或其他资源加载异常,仍有可能间接影响整体打包流程。因此可以暂时禁用 PNG 合规性检测作为排查手段之一。 通过以上调整应该能够有效缓解乃至彻底消除因缺少指定属性而导致的应用程序装配过程中的障碍现象。 ```python print("完成修复操作后,请再次运行应用程序验证效果") ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值