react-native run-android之后的两个应用程序

May*_*war 5 android react-native react-redux react-native-android

我正在做一个本机应用程序,早些时候它工作正常,但现在当我运行"react-native run-android"时,在成功安装和启动后,我可以在模拟器中看到两个应用程序,它们都工作正常.
所以,任何想法为什么我看到2个应用程序,或者我应该说为什么我要安装一个额外的重复应用程序?

Ara*_*ras 15

我认为你在你有这个问题后在你的应用程序中添加了启动画面,首先去这个目录:android/app/src/main/AndroidManifest.xml如果你添加两次这样的东西这样的话

       <activity
        android:name=".SplashActivity"
        android:theme="@style/SplashTheme"
        android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
        </activity> -->
Run Code Online (Sandbox Code Playgroud)

它将渲染两次并在您的设备上构建两个应用程序.


Raj*_*jan 13

问题是由于启动和主要活动中的多个类别 LAUNCHER。

<category android:name="android.intent.category.LAUNCHER" />
Run Code Online (Sandbox Code Playgroud)

SplashActivity 和 MainActivity 的解决方案是改变

<category android:name="android.intent.category.LAUNCHER" />
Run Code Online (Sandbox Code Playgroud)

<category android:name="android.intent.category.DEFAULT" />
Run Code Online (Sandbox Code Playgroud)

在主活动中。

.SplashActivity 和 .MainActivity 的文件看起来像这样;

    <activity
        android:name=".SplashActivity"
        android:theme="@style/SplashTheme"
        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=".MainActivity"
        android:label="@string/app_name"
        android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
        android:windowSoftInputMode="adjustResize"
        android:exported="true">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
        </intent-filter>
    </activity>
Run Code Online (Sandbox Code Playgroud)


Pea*_*ner 6

我也有这个问题。原来,我安装的RN库之一创建了一个额外的<activity /><intent-filter />标签。只需检查您的AndroidManifest.xml

我的资源:正在运行的应用在Android Studio中提供了2个应用图标-新手


Chi*_*for 6

改变这个

<activity
            android:name=".SplashActivity"
            android:theme="@style/SplashTheme"
            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=".MainActivity"
        android:label="@string/app_name"
        android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
        android:windowSoftInputMode="adjustResize"
        android:exported="true"
      >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
      </activity>
Run Code Online (Sandbox Code Playgroud)

<activity
            android:name=".SplashActivity"
            android:theme="@style/SplashTheme"
            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=".MainActivity"
        android:label="@string/app_name"
        android:configChanges="keyboard|keyboardHidden|orientation|screenSize"
        android:windowSoftInputMode="adjustResize"
        android:exported="true"
      />
Run Code Online (Sandbox Code Playgroud)

基本上你有两个意图过滤器删除一个

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

Run Code Online (Sandbox Code Playgroud)


Rod*_*ijo -2

检查已安装应用程序的包名。