Android Manifest中未声明Activity SplashScreen

时间:2017-07-28 21:34:14

标签: android android-manifest

在尝试运行我的应用程序时,我一直收到错误消息......在AndroidManifest.xml中未声明SplashScreen活动

任何想法都让我发疯了! :-)

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

    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@android:style/Theme.Holo.Light">

    <activity android:name="com.example.sjmplanningfinal.SplashScreen">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name="com.example.sjmplanningfinal.SJMPlanningHome" />
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>

4 个答案:

答案 0 :(得分:1)

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.sjmplanningfinal">
    <application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:theme="@android:style/Theme.Holo.Light">

    <activity android:name="com.example.sjmplanningfinal.SplashScreen">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity android:name="com.example.sjmplanningfinal.SJMPlanningHome" />
    <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter> </application>

</manifest>

答案 1 :(得分:0)

从SJMPlanningHome中删除标记action android:name="android.intent.action.MAIN。您已将两个活动声明为MAIN。

答案 2 :(得分:0)

每个android应用程序都应该定义“application”标签..作为manifest中的主标签..然后在应用程序内部定义活动。以下是清单结构:您也可以在此处查看:Manifest structure

<?xml version="1.0" encoding="UTF-8"?>
<manifest>
   <uses-permission />
   <permission />
   <permission-tree />
   <permission-group />
   <instrumentation />
   <uses-sdk />
   <uses-configuration />
   <uses-feature />
   <supports-screens />
   <compatible-screens />
   <supports-gl-texture />
   <application>
      <activity>
         <intent-filter>
            <action />
            <category />
            <data />
         </intent-filter>
         <meta-data />
      </activity>
   </application>
</manifest>

答案 3 :(得分:0)

首先,您缺少application标记。你必须把标签放在

之前
android:allowBackup="true"

之后

<activity android:name="com.example.sjmplanningfinal.SJMPlanningHome">

其次,您在过滤activity的意图后忘记关闭SJMPlanningHome

这是完整的代码。

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

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@android:style/Theme.Holo.Light">

        <activity android:name="com.example.sjmplanningfinal.SplashScreen">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name="com.example.sjmplanningfinal.SJMPlanningHome">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.DEFAULT" />
            </intent-filter>
        </activity>
    </application>

</manifest>