Ошибка намерения в Android Studio (приводит к сбою приложения)

#android

#Android

Вопрос:

Моя Android Studio устанавливает мое приложение дважды.

Я думаю, у меня какая-то ошибка вAndroidManifest.xml

И я думаю, я думаю, что эта ошибка возникает из <intent-filter> .Потому что я написал это дважды.

Я не знаю, как исправить код.

Это мой код.

 <?xml version="1.0" encoding="utf-8"?>
  

 <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="@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=".IntroActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
</application>
  

Ответ №1:

Это потому, что вы говорите Android пометить ваши два действия как запускаемое действие. Чтобы решить эту проблему, удалите <action android:name="android.intent.action.MAIN" и <category android:name="android.intent.category.LAUNCHER" /> из одного из ваших действий, которые вы не хотите показывать пользователю в лаунчере.

Вот как вы должны это сделать:

 <?xml version="1.0" encoding="utf-8"?>
<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="@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=".IntroActivity">
    </activity>
</application>
  

Комментарии:

1. Спасибо за ваше простое объяснение!! Я решаю это!! Большое спасибо!!!!!!

Ответ №2:

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

Этот код предназначен для обозначения первого действия приложения. Сохраняйте это только в первом действии, с помощью которого вы хотите открыть свое приложение. И удалите его из другого.