java - Android Studio 显示错误错误和奇怪的代码,但应用程序运行正常
问题描述
我最近将我的 android studio 升级到了北极狐最新版本。但是该应用程序没有运行并显示运行时错误。我通过互联网搜索并将 and 更改compileSdkVersion
为targetSdkVersion
31 并且应用程序运行正常并且几天没有显示错误。
几天后,突然之间,Android 工作室开始在 java 类和 xml 文件中显示一些奇怪的错误和完全不同的代码。于是,我打开了projet目录,在记事本中打开了java文件和xml,发现里面的代码是正确的,但是在Android studio编辑器中只显示了不同的代码。
我的问题如下
一些 java 类不显示实际代码,而是如下所示
<component name="libraryTable">
<library name="Gradle: androidx.test:monitor:1.4.0@aar">
<CLASSES>
<root url="jar://$PROJECT_DIR$/../../Gradle/caches/transforms-3/ca7a7de16b2505fe395c4817e5fa80ba/transformed/monitor-1.4.0/jars/classes.jar!/" />
<root url="file://$PROJECT_DIR$/../../Gradle/caches/transforms-3/ca7a7de16b2505fe395c4817e5fa80ba/transformed/monitor-1.4.0/res" />
<root url="file://$PROJECT_DIR$/../../Gradle/caches/transforms-3/ca7a7de16b2505fe395c4817e5fa80ba/transformed/monitor-1.4.0/AndroidManifest.xml" />
</CLASSES>
<JAVADOC>
<root url="jar://$PROJECT_DIR$/../../Gradle/caches/modules-2/files-2.1/androidx.test/monitor/1.4.0/2770e38fa6d39242c2fa2e9d2ca3275b1d9debd8/monitor-1.4.0-javadoc.jar!/" />
</JAVADOC>
<SOURCES>
<root url="jar://$PROJECT_DIR$/../../Gradle/caches/modules-2/files-2.1/androidx.test/monitor/1.4.0/5d892d39aae695079e3ecc7a841336ff3aeaf40/monitor-1.4.0-sources.jar!/" />
</SOURCES>
</library>
</component>
NULL
后面有一系列的</component>
标签。
一些 xml 文件显示如下奇怪的代码。(下面是一个活动布局文件)。
## This file must *NOT* be checked into Version Control Systems,
# as it contains information specific to your local configuration.
#
# Location of the SDK. This is only used by Gradle.
# For customization when using a Version Control System, please read the
# header note.
#Mon Sep 20 14:31:49 IST 2021
sdk.dir=C\:\\Users\\Admin\\AppData\\Local\\Android\\Sdk
<iye=
</menu>=
<menu=xmlns\:android\="http\://schemas.android.com/apk/res/android">
<?xml=version\="1.0" encoding\="utf-8"?>
一些 xml 文件在活动布局文件中显示菜单布局代码,如下所示。
// This is an activity layout file but the activity runs with expected layout when app runs.
<?xml version="1.0" encoding="utf-8"?>
<menu xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto">
<item
android:id="@+id/delete"
android:title="Delete"
android:icon=""
app:showAsAction="always|collapseActionView">
</item>
</menu>
甚至一些布局文件显示了一些类的未完成的 Java 代码。
在Android清单文件中,里面的活动类和服务的目录android:name=""
显示错误为,
在项目或库中找不到清单中引用的类 com.example.project.main.MainActivity
未解决的类“MainActivity”
在构建窗口中,我收到警告
此构建中使用了已弃用的 Gradle 功能,使其与 Gradle 8.0 不兼容。
该应用程序按预期顺利运行。
到目前为止我做了什么
- 试过做
Invalidate caches and restart
- 清理项目并重建它
- 重启系统和安卓工作室。
- 已删除
/.gradle
和/.idea
文件夹 - 降级到 30
compileSdkVersion
并targetSdkVersion
尝试过 - 试过了
Sync project with Gradle files
- 尝试下载 Android 31 的源代码,但在 SDK 管理器中找不到源代码。
- 检查了 Android 清单包名称和
applicationId
输入build.gradle
是否正确。
以上方法都没有帮助我解决问题。
解决方案
推荐阅读
- c# - UWP 空白 GridView,每列之间带有标题和行
- python - Unpacking a numpy ndarray of tuples and add it in a new dimension
- javascript - Javascript IF-Else not working as expected
- asp.net - C# ASP.NET Core 2 中的安全网络聊天
- objective-c - 将 A 类型的属性传递给方法(5 个可能的属性作为输入) - 区分输入
- javascript - prevent form submission if form fields are not filled
- angular - 在第三个服务角度 4 中注入两个服务
- postgresql - 是否也在 WSL 中使用安装在 Windows 中的 PostgreSQL?
- eclipse - PyDev 不会自动完成我导入的模块
- python - 为循环中的列打印 value_counts