gpt4 book ai didi

java - ActivityNotFoundException:无法找到显式 Activity 类

转载 作者:太空宇宙 更新时间:2023-11-04 11:57:18 24 4
gpt4 key购买 nike

我在 SO 上遇到了很多类似的问题,但没有一个提供对我有帮助的解决方案。值得一提的是,它在调试期间突然发生,就在我设法启动此 Activity (在同一调试 session 中)之后。我没有改变任何重要的东西,所以我完全不知道我是如何遇到这个问题的。

当我尝试启动新 Activity 时收到错误:

Intent intent = new Intent(SplashActivity.this, MainActivity.class);
startActivity(intent);

错误消息:

android.content.ActivityNotFoundException: Unable to find explicit activity class {com.xxx/com.xxx.MainActivity}; have you declared this activity in your AndroidManifest.xml?

这两个 Activity 都在同一个包 com.xxx 中声明。 list (删除了不相关的代码):

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
package="com.xxx">

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

<application
android:name="misc.App"
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme"
tools:replace="android:icon">
<activity
android:name=".SplashActivity"
android:theme="@android:style/Theme.NoTitleBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".MainActivity"
android:label=""
android:theme="@style/Theme.AppCompat.NoActionBar" />
</application>
</manifest>

我尝试过将显式路径放入 list 中以及创建 Intent 时,但它没有帮助,也没有清理项目。

有什么想法吗?谢谢!

编辑:这是项目结构的 Activity 部分:

Image

最佳答案

我创建了 MainActivity 的干净副本,复制了 xml 并替换了对旧 Activity 的所有引用,它可以正常工作。 list 中的声明也是相同的。

我不知道为什么会出现这个问题,但深入检查绝对不值得,所以这个解决方法是最耗时的解决方案。

编辑:我再次遇到这个问题并发现了真正的问题。有一段代码禁用了上述 Activity ,然后即使应用程序关闭并重新打开,也会抛出 ActivityNotFoundException 。我想清除缓存也会揭示这种情况。

无论如何,我在调用 Activity 中添加了一个临时代码来启用 MainActivity 并且它起作用了:

PackageManager pm = getPackageManager();
pm.setComponentEnabledSetting(new ComponentName(this, MainActivity.class),
PackageManager.COMPONENT_ENABLED_STATE_ENABLED, PackageManager.DONT_KILL_APP);

我显然删除了不相关的禁用代码。

关于java - ActivityNotFoundException:无法找到显式 Activity 类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41250306/

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