2012-03-14 4 views
34

मैं डिफ़ॉल्ट गतिविधि MainActivity का उपयोग करने के बजाय मुख्य गतिविधि के रूप में अपनी गतिविधि बनाना चाहता हूं।एंड्रॉइड में मुख्य गतिविधि के रूप में अपनी गतिविधि को कैसे सेट करें?

मैं एंड्रॉइड मेनिफेस्ट में इसे कैसे परिभाषित कर सकता हूं?

उत्तर

10

आवेदन टैग के अंदर AndroidManifest.xml फ़ाइल में एक गतिविधि टैग को जोड़ने और सेट कि डिफ़ॉल्ट

<application...... > 
    <activity 
     android:name=".DefaultActivity" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.DEFAULT" /> 
     </intent-filter> 
    </activity> 
    <activity 
     android:name=".NewActivity" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

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

</application> 
+0

मुख्य और डिफ़ॉल्ट के उपयोग क्या हैं; और मुझे – Sathish

+0

दोनों के मतभेदों की व्याख्या करें "मुख्य" गतिविधि वह गतिविधि है जो पहले और आपके शेष एप्लिकेशन को लोड करती है। प्रत्येक एप्लिकेशन में कई गतिविधियां हो सकती हैं, इसलिए आप बाद में लोड और उपयोग करने के लिए अन्य गतिविधियों को सूचीबद्ध कर सकते हैं लेकिन आपके पास केवल एक "मुख्य" गतिविधि हो सकती है। –

2

के रूप में यह सरल है पुराने गतिविधि टैग से कार्रवाई मुख्य हटा दें। अपने Android में मैनिफ़ेस्ट फ़ाइल अपने मैनिफ़ेस्ट फ़ाइल में जोड़ने के लिए,

<activity 
    android:name="Your Activity Name" 
    android:label="@string/app_name" > 
    <intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 
     <category android:name="android.intent.category.HOME" /> 
     <category android:name="android.intent.category.DEFAULT" /> 
    </intent-filter> 
</activity> 
46

, एक लांचर गतिविधि के रूप में एक गतिविधि घोषित करने के लिए नीचे दिए गए कोड का उपयोग करें:

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

Android डेवलपर डॉक्स से:

ACTION_MAIN गतिविधि: किसी कार्य इनपुट की प्रारंभिक गतिविधि के रूप में प्रारंभ करें, बिना डेटा इनपुट और कोई लौटा आउटपुट।

CATEGORY_LAUNCHER: गतिविधि किसी कार्य की प्रारंभिक गतिविधि हो सकती है और शीर्ष-स्तरीय एप्लिकेशन लॉन्चर में सूचीबद्ध है।

0

Xamarin में, आप इस तरह वर्ग परिभाषा ऊपर MainLauncher = true जोड़ सकते हैं:

[Activity(Label = "UserActivity", MainLauncher = true)] 
public class UserActivity : ListActivity 
+0

@ सतन पांडेय यह अच्छा है, धन्यवाद! – ManuQiao

2

आप मैनिफ़ेस्ट फ़ाइल में उपयोग कर सकते हैं:

<activity 
    android:name=".DefaultActivity" 
    android:label="@string/app_name" > 
    <intent-filter> 
     <action android:name="android.intent.action.DEFAULT" /> 
    </intent-filter> 
</activity> 
<activity 
    android:name=".NewActivity" 
    android:label="@string/app_name" > 
    <intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 
     <category android:name="android.intent.category.LAUNCHER" /> 
    </intent-filter> 
</activity> 

यह बहुत महत्वपूर्ण है:

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