gpt4 book ai didi

Android Studio 3.0 list 错误 : unknown element found

转载 作者:IT王子 更新时间:2023-10-29 00:02:00 25 4
gpt4 key购买 nike

NOTICE: Please do not post this "android.enableAapt2=false" as an answer. It is not a solution. It is just ignoring the real error which is not causing any problem on runtime.

Solution was simple, just removed mistakenly placed action tag outside of an intent filter in the manifest file.

有一个由 Android Studio 2.3 构建的应用程序很好。更新 Android Studio 3.0 Stable 后,开始出现此错误,无法构建我的项目。

这是我的 manifest.xml

<application
android:name=".ApplicationClass"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:largeHeap="true"
android:supportsRtl="true"
android:theme="@style/AppTheme">

<!--other unrelated stuff-->

<action android:name="com.google.android.c2dm.intent.REGISTRATION" />

<receiver
android:name="com.google.android.gms.gcm.GcmReceiver"
android:exported="true"
android:permission="com.google.android.c2dm.permission.SEND">
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<category android:name="com.xxx.xxx" />
</intent-filter>
</receiver>
</application>

错误显示这一行:

<action android:name="com.google.android.c2dm.intent.REGISTRATION" />

如果我注释/删除此操作标记行,则项目构建良好,但对于 GCM 是必需的,我无法删除它。

如您所见,错误not发生在main list 文件中,发生在/build/intermediates/manifests/full/debug/AndroidManifest.xml

尝试清理、重建、禁用即时运行。有什么解决办法吗?

错误日志:

/THE_PROJECT_PATH/app/build/intermediates/manifests/full/debug/AndroidManifest.xml
Error:(99) error: unknown element <action> found.
Error:(99) unknown element <action> found.
Error:java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
Error:java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
Error:com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
Error:Execution failed for task ':app:processDebugResources'.
> Failed to execute aapt
Information:BUILD FAILED in 1s
Information:6 errors
Information:0 warnings
Information:See complete output in console

最佳答案

您的标签放错了位置。新的 AAPT (AAPT2) 现在会对此抛出错误。

来自此处的文档:https://developer.android.com/studio/build/gradle-plugin-3-0-0-migration.html

Behavior changes when using AAPT2


To improve incremental resource processing, Android plugin 3.0.0 enables AAPT2 by default. Although AAPT2 should immediately work with older projects, this section describes some behavior changes that you should be aware of.

Element hierarchies in the Android manifest

In previous versions of AAPT, elements nested in incorrect nodes in the Android manifest are either ignored or result in a warning. For example, consider the following sample:

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.myname.myapplication">
<application
...
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<action android:name="android.intent.action.CUSTOM" />
</activity>
</application>
</manifest>

Previous versions of AAPT would simply ignore the misplaced tag. However, with AAPT2, you get the following error:

AndroidManifest.xml:15: error: unknown element <action> found.

To resolve the issue, make sure your manifest elements are nested correctly. For more information, read Manifest file structure.

关于Android Studio 3.0 list 错误 : unknown element <action> found,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46948498/

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