2010-10-30 10 views
5

जब मैं अपने डिवाइस को किसी डिवाइस या एमुलेटर पर इंस्टॉल करता हूं तो यह ऐप मेनू में कई बार दिखाई देता है, मेरे मामले में मुझे 4 एप्लिकेशन मिलते हैं जो मेरा एप्लिकेशन नाम दिखाते हैं।मेरा डिवाइस मेरे डिवाइस पर 4 बार क्यों दिखाई देता है?

ऐसा लगता है कि प्रत्येक आइकन एक गतिविधि का प्रतिनिधित्व किया है, और के बाद से अपने आवेदन 3 टैब (गतिविधियों के साथ) शामिल हैं मेरे मेनू पर पहले 3 माउस किसी विशेष गतिविधि के लिए जाना, और 4 आइकन मुझे स्वयं ऐप

पर ले जाता है

यह मेरा प्रकट

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

    <uses-sdk android:minSdkVersion="7" /> 
    <uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"></uses-permission> 
    <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS"></uses-permission> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"></uses-permission>  
    <uses-permission android:name="android.permission.GET_ACCOUNTS" /> 
    <uses-permission android:name="android.permission.READ_CONTACTS" /> 
    <uses-permission android:name="android.permission.WRITE_CONTACTS" /> 

    <application android:icon="@drawable/icon" 
        android:label="@string/app_name" 
        android:name="com.jameselsey.domain.GlobalState" 
        android:theme="@android:style/Theme.NoTitleBar"> 

     <activity android:name=".DefaultActivity" 
        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=".MyContactsActivity" 
        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=".MyMapsActivity" 
        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=".OptionsActivity" 
        android:label="@string/app_name"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 

     <uses-library android:name="com.google.android.maps" /> 
    </application>  
</manifest> 

मुझे अपने डिवाइस पर अपना अनुप्रयोग के लिए केवल एक आइकन के लिए कर सके और न 4 है?

धन्यवाद

उत्तर

6

जवाब पहले से ही प्रदान की गई है, लेकिन मैं सिर्फ यह जानकारी देते हूँ से

+0

सबसे वर्णनात्मक उत्तर, लेकिन सभी को +1 के रूप में +1। धन्यवाद :) – Jimmy

10

क्योंकि आप

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

अपनी गतिविधि के लिए एक लॉन्चर आइकन कहते हैं कि के साथ 4 गतिविधियों की है। पिछले 3 गतिविधियों

+0

धन्यवाद, इससे मुझे बहुत मदद मिली !! –

5

निकालें intent-filter। जावा में एप्लिकेशन कक्षा के साथ शुरू होगा जिसमें मुख्य विधि शामिल है और यह मूल रूप से एकल संपूर्ण एप्लिकेशन पर प्रवेश बिंदु होगा।

एंड्रॉइड में आप देख सकते थे कि आपकी गतिविधि कक्षा के अंदर कोई मुख्य विधि नहीं है। यहां हम ऐसा करने के लिए मैनिफेस्ट फ़ाइल का उपयोग करते हैं। एक एप्लिकेशन में एकाधिक प्रविष्टि अंक हो सकते हैं और "android.intent.action.MAIN" इंगित करता है कि यह गतिविधि मुख्य प्रारंभिक गतिविधि होनी चाहिए और LAUNCHER श्रेणी का कहना है कि यह प्रविष्टि बिंदु एप्लिकेशन लॉन्चर में सूचीबद्ध होना चाहिए। एक बार जब आप LAUNCHER के रूप में गतिविधि करते हैं तो एंड्रॉइड एक एप्लिकेशन आइकन और नाम प्रदान करता है और आपने ध्यान दिया होगा कि आपके मामले में प्रत्येक 4 आइकन पर क्लिक करने से आपको 4 अलग-अलग गतिविधियां मिलेंगी।

नीचे की रेखा यह है कि यदि हमारे एप्लिकेशन को एकाधिक प्रविष्टि बिंदुओं की आवश्यकता नहीं है, तो आपको इसका उपयोग करने की आवश्यकता नहीं है।

संबंधित मुद्दे