L'application en cours d'exécution donne 2 icônes d'applications dans Android Studio-débutant
Application en cours d'Exécution dans android studio donne 2 icônes d'application débutant dans la sam studio de
Enfin, j'avais fait fonctionner mon application, im d'eclipse à android studio et maintenant J'ai des problèmes sur la façon de rendre la couleur de logcat identique à eclipse?.
Ma question Est qu'il y a 2 icônes d'application lorsque je lance l'application, et quand je la désinstaller, 2 d'entre elles ont été supprimées. est-ce normal dans android studio?
J'ai trouvé qu'android studio peut copier des clés d'eclipse.
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.mytrack.ph"
android:versionCode="1"
android:versionName="1.0" >
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="19" />
<uses-feature
android:glEsVersion="0x00020000"
android:required="true"/>
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
<uses-permission android:name="android.permission.VIBRATE"/>
<uses-permission android:name="android.permission.WAKE_LOCK"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<!-- Google Map v.2 permissions -->
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<!-- GCM permissions -->
<uses-permission android:name="android.permission.GET_ACCOUNTS" />
<uses-permission android:name="com.google.android.c2dm.permission.RECEIVE" />
<permission android:name="com.example.gcm.permission.C2D_MESSAGE"
android:protectionLevel="signature" />
<uses-permission android:name="com.example.gcm.permission.C2D_MESSAGE" />
<!-- Writing Persmission -->
<uses-permission android:name="android.permission.WRITE_USER_DICTIONARY" />
<uses-permission android:name="android.permission.WRITE_PROFILE" />
<uses-permission android:name="android.permission.READ_CONTACTS"/>
<uses-permission android:name="android.permission.READ_PROFILE"/>
<uses-permission android:name="android.permission.READ_CONTACT"/>
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name" >
<activity android:name="com.mytrack.ph.SplashActivity"
android:label="@string/app_name"
android:noHistory="true"
android:screenOrientation="portrait"
android:theme="@style/splashScreenTheme" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name="com.mytrack.ph.LoginActivity"
android:label="@string/app_name"
android:screenOrientation="portrait"
>
</activity>
<meta-data
android:name="com.google.android.gms.version"
android:value="@integer/google_play_services_version" />
<meta-data
android:name="com.google.android.maps.v2.API_KEY"
android:value="@string/google_map_api_key"/>
<activity android:name="com.facebook.LoginActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:label="@string/app_name" />
<meta-data android:name="com.facebook.sdk.ApplicationId" android:value="@string/app_id"/>
<service android:name="com.my.track.service.MyTrackService"></service>
<receiver
android:name="com.my.track.service.MyTrackGcmBroadcastReceiver"
android:permission="com.google.android.c2dm.permission.SEND" >
<intent-filter>
<action android:name="com.google.android.c2dm.intent.RECEIVE" />
<category android:name="com.my.track.service" />
</intent-filter>
</receiver>
<service android:name="com.my.track.service.MyTrackGcmIntentService" />
<activity android:name="NavigationMenuActivity"
android:configChanges="orientation|keyboardHidden"
android:screenOrientation="portrait"
android:launchMode="singleTop"
android:permission="com.google.android.c2dm.permission.SEND" >
></activity>
<receiver android:name="com.my.track.results.ConnectionChangeReceiver" >
<intent-filter>
<action android:name="android.net.conn.CONNECTIVITY_CHANGE"/>
</intent-filter>
</receiver>
</application>
</manifest>
Je pense que c'est normal dans Android studio. L'exécution d'une application donne 2 icônes de lancement. PS:
Mon AndroidManifest.xml
se trouve dans le dossiermain et j'ai utilisé eclipse pour exporter vers gradle build.
Im en utilisant Android Studio 0.8.6 grâce.
4 réponses
Je l'ai! oui, enfin, je dois étudier gradles et d'autres choses.
En fait, j'ai 2 projets android dans le projet, l'un est une bibliothèque et l'autre est l'application principale.
J'ai découvert que lorsque j'ai importé ces projets Android Studio (j'ai exporté la lib vers gradle build à partir d'eclipse) ne se soucie pas s'il s'agit d'un projet lib ou d'un projet principal. (Corrigez-moi si je suis mauvais ).
, Donc la seule chose à faire est de retirer le intent-filter
de lib-Android-projet.
Modifier: @tout résolu ! merci à tout le monde, Je ne savais pas Qu'il y avait un autre AndroidManifest.xml, je pensais qu'eclipse l'avait supprimé. et je pensais que L'Exporter vers gradle le supprimerait car il est vérifié en tant que Bibliothèque.
Merci pour votre aide.
Le {[1] } qui affecte la création de l'icône du lanceur multiple est le suivant:
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
Manifest merger d'Android Studio combinera toujours <intent-filter>
s dans les projets de bibliothèque dans le Manifeste du projet principal. Vous pouvez finir par avoir plusieurs Intentions LAUNCHER
dans votre manifeste synthétisé, ayant ainsi plusieurs icônes de lancement. Pour éviter cela, supprimez simplement les intentions LAUNCHER
du Manifeste des projets de bibliothèque.
Vous déclarez deux filtres d'intention, utilisé un seul filtre D'intention dans l'activité, sur AndroidManifest.
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
Si vous avez utilisé deux ou plusieurs filtres d'intention dans AndroidManifest, vous aurez deux icônes d'application, alors supprimez - le et définissez un filtre d'intention.
Je hove ceci est utilisé pour vous.
Je suis d'accord, puisque j'ai fait 2 activity (une pour splash, une pour main). Dans le manifeste j'ai oublié de supprimer
<intent-filter>
<action android:name="android.intent.action.MAIN"/>
<category android:name="android.intent.category.LAUNCHER"/>
</intent-filter>
Donc, à la fin quand j'installe l'application, j'aurai 2 app.