AndroidManifest:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.m.e"
android:versionCode="5"
android:versionName="3.0">
<uses-sdk
android:minSdkVersion="8"
android:targetSdkVersion="18"/>
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme">
<activity
android:name="com.m.e"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:configChanges="orientation|keyboardHidden">
<intent-filter>
<action
android:name="android.intent.action.MAIN"
/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activity
android:name="com.m.e"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:configChanges="orientation|keyboardHidden">
<intent-filter>
<action
android:name="android.intent.action.first"
/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
.....
</application>
</manifest>
错误:
Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.m.e/.Splash }
Error type 3
Error: Activity class {com.m.e/com.m.e.Splash} does not exist.
注意: .Splash
确实存在。
答案 0 :(得分:28)
在build.gradle
中,行:
apply plugin: 'android-library'
需要改为:
apply plugin: 'com.android.application'
答案 1 :(得分:21)
重命名/重构后我遇到了同样的错误。我所做的是将applicationId
属性属性添加到我的build.gradle文件中,并将其值设置为应用程序包。像这样:
android{
defaultConfig{
applicationId "com.example.mypackage"
}
}
答案 2 :(得分:14)
虽然这是几年前发布的一个问题,但我想分享一下我的解决方案。
打开运行 - >编辑配置,检查是否&#34;部署默认APK&#34;在包装面板中选择。 &#34;部署默认APK&#34;应该选择。
问题出现在我身上,因为我选择&#34;不要部署任何东西&#34;由于某种原因早些时候,我忘了撤消所选择的。
答案 3 :(得分:10)
adb uninstall <your package name>
这对我有用。虽然应用程序甚至没有显示为已安装的应用程序,但卸载命令修复了问题。 我的理论:在上次卸载之后,可能有些数据未被清除,导致下一次安装没有完全完成。
答案 4 :(得分:7)
是的,我知道已经接受了这个问题,但它没有用(或者可能不再有效)。目前,在 Android 8.0 Oreo 版本中,您的应用可能会在您的设备上卸载&#34;但并非适用于所有用户&#34;。因此,下次使用您的设备调试应用程序时,会发生此错误。
Error: Activity class "class path here" does not exist
Error type 3
以下是你如何解决它绝对有效(搜索它2天信任我)
如果您仍然可以在设置&gt;下看到您的应用应用&gt;选择您的应用并转到其工具栏上的选项,然后选择&#34; 为所有用户卸载&#34;
如果您的应用不在应用列表中,生成/构建APK ,在我的情况下(Android Studio 3.0.1),您可以转到构建&gt;构建Apk 。在您的设备上手动安装。 然后执行第1步。
那里!您的应用程序是所有清理的应用程序并完全卸载。您现在可以使用开发环境对其进行调试。
有待进一步研究:我相信 Samsung Pass app 与此错误有关。即使在卸载之后。我的项目仍在他们的名单上。
Happy Codings 干杯!
答案 5 :(得分:5)
我也面临同样的问题,当我卸载应用程序并且同时给出build时出现问题。然后在工作室中给出了上述错误。所以我尝试了所有选项,但这些都不适合我。所以我检查了设置 - &gt;应用 - &gt;选择了我的应用程序,我看到应用程序处于禁用状态,因此它没有安装(给出错误)。我卸载了应用程序并尝试构建然后它工作正常。
答案 6 :(得分:5)
我在Android O(Google Pixel C)上遇到此错误。我想我也会使用其他设备。
我尝试安装(从AndroidStudio)到任何设备都很好,但在Android O上没有。在Android上我得到了同样的错误(如下所示)。
根本原因。我在该设备上有两个用户(user1,user2)。 当我从user1卸载应用程序时(app2仍在user2中)。 当我尝试在user1上重新安装应用程序时,它返回user2中的error.Same案例。 如果我从两个用户卸载应用程序并重新安装它可以解决问题。
如果我们使用&#34; adb install -r example.apk&#34;来自命令链接它有效,但AndroidStudio没有进行卸载和重新安装(如果设备中有两个用户)。
所以在我的情况下,这是因为多个用户问题。我的所有其他设备(除了Android O)都是单用户,这就是为什么它在其他设备上工作,除了Pixel C(有两个用户)。 所以要注意多用户设备。
No apk changes detected since last installation, skipping installation of /home/user/Project/AndroidStudioProjects/MyAddress/app/build/outputs/apk/app-debug.apk
$ adb shell am force-stop com.arris.myaddress
$ adb shell am start -n "com.example.address/com.example.address.MainActivity1" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER
Error while executing: am start -n "com.example.address/com.example.address.MainActivity1" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER
Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.example.address/.MainActivity1 }
Error type 3
Error: Activity class {com.example.address/com.example.address.MainActivity1} does not exist.
Error while Launching activity
答案 7 :(得分:5)
我尝试了上面的所有建议,但只有这解决了我的问题;
答案 8 :(得分:5)
转到您的设备设置。选择应用选项,从列表中选择该特定应用,在右上角,选择菜单栏选项,然后选择删除所有用户。它对我有用。
答案 9 :(得分:3)
我最近刚遇到这个错误。 我通过在我的设备上完全卸载应用程序来修复它,然后重新运行。
为了提供一些上下文,这是由使用setComponentSetting()
引起的答案 10 :(得分:2)
当您手动更改包名称时,如果manifest.xml
没问题,那么您需要更改
申请插件:'android'
到
apply plugin:'com.android.application'
答案 11 :(得分:2)
答案 12 :(得分:1)
您的错误表明它正在寻找com.codealchemist.clashmma.splash
。大多数Java类都以大写字母开头 - 确保您的类名完全匹配。
答案 13 :(得分:1)
我想你有像我的LG Stylus 3 Android 7.0这样的设备,当你按下并将应用程序从桌面移动到垃圾箱时,应用程序不会从设备中删除。有关详细信息,请参阅my accepted answer on the same question。
答案 14 :(得分:0)
在我的情况下,我尝试了所有这里提到的,他们没有解决我的问题。问题不是在Android Studio中,而是在设备中。 在我将Android设备重置为出厂设置后(如此处所述https://support.google.com/android-one/answer/6088915?hl=en),问题就消失了。
答案 15 :(得分:0)
我有类似的问题,在搜索和尝试修复之后我无法找到解决方案。对我来说唯一有用的是创建一个新项目,复制旧活动中的所有代码并将它们粘贴到新创建的活动(类似的名称但不同的包)。它工作得非常好。我在更改包名之前尝试过,但它没有用。它可能适合你们。
答案 16 :(得分:0)
检查您是否正在构建隐藏版本。这是隐藏应用程序的预期行为。
如果您想构建常规版本,则需要在Android Studio中更改Build Variant Build&gt;选择Build Variant ,将其更改为常规。
答案 17 :(得分:0)
我通过重新启动测试设备并重新启动Android Studio来解决此问题。
答案 18 :(得分:0)
在我的案例中重命名活动就是修复。
答案 19 :(得分:0)
我正在使用一个库模块,其中包含在Manifest中指定的示例Activity。
从库项目中的清单中取出示例活动为我工作。
答案 20 :(得分:0)
大多数情况下它是一个日食问题,所以正常情况可能会对你有用。清理项目并重建工作空间,打开清单并检查是否有任何错误,重新检查日志中提到的类名,一次又一次清理,重新启动eclipse,打开并清理。
答案 21 :(得分:0)
您只需在 build.gradle
中更改applicationId答案 22 :(得分:0)
有时,一旦您重命名项目的根目录,就会发生这种情况。
答案 23 :(得分:0)
我遇到了同样的问题,我通过在Android手机(使用Play商店)上重新安装了先前的生产版本来解决了该问题,flutter run
之后将正常运行。
答案 24 :(得分:-2)
在build.gradle中,
变化
apply plugin: 'android-library'
到
apply plugin: 'com.android.application'
如果你的build.gradle已经有apply plugin: android-library
,那么请尝试清理你的项目。