当前位置: 首页 > 知识库问答 >
问题:

Android Studio不识别MainActivity,尽管在AndroidManifest.xml中声明了

澹台锐
2023-03-14

在暂停了一段时间的Android Studio项目的工作,然后返回并将其添加到SVN中,我无法再使该项目运行;在我看来,最初的androidmanifest.xml可能是由于缺少正确的“SVN忽略”规则而丢失的,而且当我在一台新机器上创建了一个新的Android Studio项目,并从SVN更新了它,然后提交(不幸的是,在我工作的另一台机器上也已经更新了)时,SVN似乎使用了更新的清单文件,可能还有正确构建该项目所需的其他文件。

除了在当前的清单文件中,有几个活动丢失了,我将不得不尝试在那里重新构造之外,我现在遇到的问题是,在尝试构建时,我总是得到“未找到默认活动”错误。当我将其设置为.mainActivity(它绝对存在于app/src/main/java/com.example.bla.logintest中)时,它会说“activity'mainActivity'不是在AndroidManifest.xml中声明的”,因此不会编译。

我的清单文件现在如下所示:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.bla.logintest" >
<uses-permission android:name="android.permission.READ_PHONE_STATE">
    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name=".MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".EditDB"
            android:label="@string/title_activity_edit_diags"
            android:parentActivityName=".MenuActivity">
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value="com.example.bla.logintest.MenuActivity" />
        </activity>
        <activity
            android:name=".EditAnswers"
            android:label="@string/title_activity_edit_questions"
            android:parentActivityName=".MenuActivity">
            <meta-data
                android:name="android.support.PARENT_ACTIVITY"
                android:value="com.example.bla.logintest.MenuActivity" />
        </activity>
    </application>
</uses-permission>
</manifest>

注:我已经尝试了[本相似题][1]中的解法。

sourceSets {
    main {
        manifest.srcFile 'src/main/AndroidManifest.xml'
    }

我知道其他两个活动的父项仍然缺失,并希望下一步解决该问题,但首先希望有一个工作的默认活动。

你有什么建议我可以试试吗?我使用的是Android Studio1.3.2。

共有1个答案

江航
2023-03-14

这应该能解决你的问题。

您不应该将标记写在标记内部。

 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.bla.logintest" >
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" >
    <activity
        android:name=".MainActivity"
        android:label="@string/app_name" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name=".EditDB"
        android:label="@string/title_activity_edit_diags"
        android:parentActivityName=".MenuActivity">
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value="com.example.bla.logintest.MenuActivity" />
    </activity>
    <activity
        android:name=".EditAnswers"
        android:label="@string/title_activity_edit_questions"
        android:parentActivityName=".MenuActivity">
        <meta-data
            android:name="android.support.PARENT_ACTIVITY"
            android:value="com.example.bla.logintest.MenuActivity" />
    </activity>
</application>

</manifest>
 类似资料:
  • 问题内容: 我正在尝试在后台解压缩某些文件,因此我像在Google教程中一样使用IntentService。我在AndroidManifest中声明的服务类如下: 在活动中,我有 和服务在这里: 它应该显示吐司只是为了测试,但我总是收到一个错误: 两者(类和活动)都位于同一文件夹(org.osmdroid)中。似乎可以使用路径,但是问题出现了,我没有更多的想法了…… 问题答案: 您正在将服务作为活

  • 本文向大家介绍AndroidStudio:手势识别,包括了AndroidStudio:手势识别的使用技巧和注意事项,需要的朋友参考一下 一内容:设计一个手写字体识别程序。 二实现 ①建立一个存放手写字体的数据库 ②activity_main.xml 3.MainActivity.java 三效果 以上所述是小编给大家介绍的AndroidStudio手势识别详解整合,希望对大家有所帮助,如果大家有任

  • 我使用Identityserver3作为MVC应用程序的授权服务器。因此,我的类如下: 这是我的子类: 这是我的: 但是在我的

  • 我犯了这些错误 Android.Content.ActivityNotFoundException:无法找到显式活动类{};您是否在AndroidManifest.xml中声明了此活动?在Android.app.instrumentation.checkStartActivityResult(instrumentation.java:2005),在Android.app.instrumentati

  • JFinal 项目是符合 Java Web 规范的普通项目,所以开发者原有的项目 启动 和 部署 知识全部有效,不需要特殊对待 JFinal 项目。 因此,本章介绍的所有启动及部署方式 仅仅针对于 JFinal 内部提供的 jfinal-undertow 以及 jetty-server 整合方式。当碰到启动问题时如果并非在使用 jfinal 整合的 undertow、jetty,那么决然与 jfi

  • 我有以下管道: 不幸的是,这引发了: groovy.lang.MissingPropertyException:没有这样的属性:org.kohsuke.groovy上的类groovylang.Binding.getVariable(Binding.java:63)的master:org.jenkinsi.plugins.scriptsecurity.sandbox.groovy-SandboxIn