2016-07-11 4 views
0

Ich führe die App auf Emulator (und auf Handys) und es erstellt 2 Verknüpfungen in Homescreen. Wenn ich die App lösche, werden beide Verknüpfungen entfernt.Android App erstellt doppelte Verknüpfung in Homescreen

Meine App haben auf splash screen dann gehen Sie zum Hauptbildschirm und ich benutze Android Studio.

Ich glaube, ist mit <intent-filter> verbunden, aber jedes Mal, wenn ich lösche, wenn ich die App laufen, erscheint es wieder automatisch auf beide <activity>.

Manifest-Datei:

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

    <uses-sdk 
     android:minSdkVersion="15" 
     android:targetSdkVersion="23" /> 

    <receiver android:name="receiver.NetworkChangeReceiver" > 
     <intent-filter> 
      <action android:name="android.net.conn.CONNECTIVITY_CHANGE" /> 
     </intent-filter> 
    </receiver> 

    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" /> 

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

     <!-- Splash screen --> 
     <activity 
      android:name="com.example.epicbit.tecnoprolab.SplashScreen" 
      android:label="@string/app_name" 
      android:theme="@android:style/Theme.Black.NoTitleBar" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity 
      android:name="com.example.epicbit.tecnoprolab.MainActivity" 
      android:label="@string/app_name" 
      android:theme="@style/AppTheme.NoActionBar" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

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

EDIT: In diesem Video zu verstehen, was passiert, wenn ich Ihre sugestions folgen:

https://vid.me/onhe

Antwort

0

Remove Code unten aus MainActivity

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

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

Ihr SplashScreen wird die Hauptaktivität Ihrer App sein ... Diese Parameter werden also nur für den SplashScreen benötigt.

Endergebnis

<!-- Splash screen --> 
<activity 
    android:name="com.example.epicbit.tecnoprolab.SplashScreen" 
    android:label="@string/app_name" 
    android:theme="@android:style/Theme.Black.NoTitleBar" > 
    <intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 

     <category android:name="android.intent.category.LAUNCHER" /> 
    </intent-filter> 
</activity> 
<activity 
    android:name="com.example.epicbit.tecnoprolab.MainActivity" 
    android:label="@string/app_name" 
    android:theme="@style/AppTheme.NoActionBar" > 
</activity> 

UPDATE

checkte ich dein Bild.

Ich sah, dass Sie folgende Datei aktualisieren:

app/build/intermediates/manifests/full/debug/AndroidManifest.xml 

jedoch app/Build-Datei ist ein Ordner wurden Android Studio die generierten Dateien setzen ...

versuchen, für das Manifest suchen in Ihr Quellcode Ordner .. So etwas wie:

app/src/... (or any other folder different from build) 
+0

Nicht funktionieren. Wenn ich im Android Studio RUN drücke. Automatische er wieder hinzufügen: ' ' Zu meiner Hauptaktivität. Ich verstehe nicht warum. –

+0

@CarlosBranco Fügen Sie Ihrer App Bibliothek hinzu? Oder etwas ähnliches? Vielleicht verbindet Android Studio die Manifest-Datei mit einer anderen ... – W0rmH0le

+0

Mein Projekt ist ziemlich klein. http://i.imgur.com/2Lo80Yl.png Überprüfen Sie dies. hmmm ich verstehe nicht, warum das passiert. –

0

Ihr manifestieren sollte man MAIN Aktion und auch ein LAUNCHER Intent-Filter sein, die Aktivität für Ihre applicaiton beginnt

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

Nur für Stammaktivität Ihrer Anwendung.

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

    <uses-sdk 
     android:minSdkVersion="15" 
     android:targetSdkVersion="23" /> 

    <receiver android:name="receiver.NetworkChangeReceiver" > 
     <intent-filter> 
      <action android:name="android.net.conn.CONNECTIVITY_CHANGE" /> 
     </intent-filter> 
    </receiver> 

    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" /> 

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

     <!-- Splash screen --> 
     <activity 
      android:name="com.example.epicbit.tecnoprolab.SplashScreen" 
      android:label="@string/app_name" 
      android:theme="@android:style/Theme.Black.NoTitleBar" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity 
      android:name="com.example.epicbit.tecnoprolab.MainActivity" 
      android:label="@string/app_name" > 

     </activity> 
    </application> 
+0

Nicht funktionieren. Mein Android Studio fügt jedes Mal, wenn ich es entferne, wenn ich die App starte, zu allen Aktivitäten hinzu. –

Verwandte Themen