运行该程序后,Android Studio会在我的设备中安装2个应用程序

问题描述 投票:0回答:2

每次运行时,这个程序都会在我的手机上安装2个应用程序。第一个名为电子废物回收,第二个名为主要活动。如何删除第二个?我只需要电子废物回收

这个程序清单文件:

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

    <uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/cenviro"
        android:label="@string/app_name"
        android:roundIcon="@drawable/cenviro"
        android:supportsRtl="true"
        android:theme="@style/AppTheme"
        tools:ignore="GoogleAppIndexingWarning">
        <activity
            android:name=".SplashScreen"
            android:theme="@style/Theme.AppCompat.Light.NoActionBar">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".Login"
            android:theme="@style/AppTheme"
            android:windowSoftInputMode="adjustPan" />
        <activity
            android:name=".Signup"
            android:windowSoftInputMode="adjustPan" />
        <activity
            android:name=".Users.MainActivity"
            android:label="@string/title_activity_main"
            android:theme="@style/AppTheme.NoActionBar"
            android:windowSoftInputMode="adjustPan">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
        <activity
            android:name=".Admin.Admins"
            android:label="@string/title_activity_admin" />

        <meta-data
            android:name="com.google.android.geo.API_KEY"
            android:value="AIzaSyCuN_T7G_WF_cA8SObet5eIrKZgZIzGaUw" />

        <activity
            android:name=".MessageActivity"
            android:theme="@style/Theme.AppCompat.Light.NoActionBar" />

        <service android:name=".Notification.MyFirebaseIdService"
            android:enabled="true"
            android:exported="true">
            <intent-filter>
                <action android:name="com.google.firebase.INSTANCE_ID_EVENT"/>
            </intent-filter>
        </service>

        <service android:name=".Notification.MyFirebaseMessaging"
            android:enabled="true"
            android:exported="true">
            <intent-filter>
                <action android:name="com.google.firebase.MESSAGING_EVENT"/>
            </intent-filter>
        </service>
    </application>

</manifest>

任何人都可以帮我解决这个问题吗?对你的帮助表示感谢

android manifest
2个回答
0
投票

使用<intent-filter>只为一个活动!

 <application
    android:allowBackup="true"
    android:icon="@drawable/cenviro"
    android:label="@string/app_name"
    android:roundIcon="@drawable/cenviro"
    android:supportsRtl="true"
    android:theme="@style/AppTheme"
    tools:ignore="GoogleAppIndexingWarning">
    <activity
        android:name=".SplashScreen"
        android:theme="@style/Theme.AppCompat.Light.NoActionBar">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name=".Login"
        android:theme="@style/AppTheme"
        android:windowSoftInputMode="adjustPan" />
    <activity
        android:name=".Signup"
        android:windowSoftInputMode="adjustPan" />
    <activity
        android:name=".Users.MainActivity"
        android:label="@string/title_activity_main"
        android:theme="@style/AppTheme.NoActionBar"
        android:windowSoftInputMode="adjustPan">

    </activity>
    <activity
        android:name=".Admin.Admins"
        android:label="@string/title_activity_admin" />

    <meta-data
        android:name="com.google.android.geo.API_KEY"
        android:value="AIzaSyCuN_T7G_WF_cA8SObet5eIrKZgZIzGaUw" />

    <activity
        android:name=".MessageActivity"
        android:theme="@style/Theme.AppCompat.Light.NoActionBar" />

    <service android:name=".Notification.MyFirebaseIdService"
        android:enabled="true"
        android:exported="true">

    </service>

    <service android:name=".Notification.MyFirebaseMessaging"
        android:enabled="true"
        android:exported="true">

    </service>
</application>

0
投票

您已多次定义启动器操作。从MainActivity中删除intent-filter标记,安装后不会显示MainActivity。

TL; DR:

更换

    <activity
        android:name=".Users.MainActivity"
        android:label="@string/title_activity_main"
        android:theme="@style/AppTheme.NoActionBar"
        android:windowSoftInputMode="adjustPan">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

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

    <activity
        android:name=".Users.MainActivity"
        android:label="@string/title_activity_main"
        android:theme="@style/AppTheme.NoActionBar"
        android:windowSoftInputMode="adjustPan">
    </activity> 
© www.soinside.com 2019 - 2024. All rights reserved.