Error running second Activity: The activity must b

2019-02-07 10:31发布

问题:

I cant seem to launch my application. It gives me an error like this: "Error running second Activity: The activity must be exported or contain an intent-filter".

Is there anything wrong with my manifest?

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="sg.edu.rp.g913.mymakeuppouch">


    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".secondActivity">
        </activity>
    </application>

</manifest>

回答1:

Put android:exported="true" in the <activity> tag

<activity android:name=".secondActivity"
    android:exported="true">


回答2:

You should set the Run>edit configuration to the desired launcher activity and give the intent filter at the manifest to the correct activity

below is the error creating situation

<application
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:supportsRtl="true"
    android:theme="@style/AppTheme">
    <activity android:name=".MainActivity">

        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>

    </activity>
    <activity android:name=".Page_2">
    </activity>
</application>

Image showing incorrect configuration

correct configuration and code are given below to run Mainactivity as launcher activity

<application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity android:name=".Page_2">
        </activity>
    </application>

corrected configuration window