2011-12-23 13 views
11

मेरे आवेदन में टैब लेआउट है। और दो टैब।Android में मेरे एप्लिकेशन के भीतर एंड्रॉइड ऐप्स कैसे लॉन्च करें?

  • टैब 1 - मेरे ऐप enter image description here
  • टैब 2 - किसी भी बाहर Android एप्लिकेशन (संपर्क की तरह, फोन डायलर आदि ..) (मुझे पता है अपने आवेदन के भीतर बाहर आवेदन लेकिन इसकी नहीं चल रहा शुरू करने के लिए कैसे (मतलब टैब लॉन्च के बाद प्रदर्शित नहीं होगा))।

अग्रिम धन्यवाद

+0

इरादे वर्ग के बारे में पढ़ें और जानें कि कौन से कार्य हैं और आप अपनी समस्या का समाधान करेंगे। हम आपको जवाब नहीं देंगे। एंड्रॉइड इरादा प्रणाली के तरीके को समझें और फिर यह ग्रेवी होगी। – JoxTraex

+5

@JoxTraex क्या वह पूछ रहा है के लिए यह संभव है? तो मुझे फिर से इरादा पढ़ना होगा – ingsaurabh

+0

टैट संभव है? मुझे शक है कि । आप अपने आवेदन से अन्य एप्लिकेशन चला सकते हैं लेकिन इसे पहले ऐप द्वारा उत्पन्न दृश्य के अंदर चला सकते हैं? –

उत्तर

0

पढ़ने डॉक (आशय अनुभाग), कुछ उदाहरण:

public class MyTab extends TabActivity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     final TabHost tabHost = getTabHost(); 

     Intent taskIntent = new Intent(this, Public.class); 
     taskIntent.putExtra(Intent.ACTION_VIEW, "public"); 

     TabHost.TabSpec tsValid = tabHost.newTabSpec("public"); 
     tsValid.setIndicator(getText(R.string.tab_title_public)); 
     tsValid.setContent(taskIntent); 

     tabHost.addTab(tsValid); 

     Intent annIntent = new Intent(this, Private.class); 
     annIntent.putExtra(Intent.ACTION_VIEW, "private"); 

     TabHost.TabSpec tsGenerate = tabHost.newTabSpec("private"); 
     tsGenerate.setIndicator(getText(R.string.tab_title_private)); 
     tsGenerate.setContent(annIntent); 

     tabHost.addTab(tsGenerate); 
    } 

} 
12

मैं इस गलत समझा हो सकता है, लेकिन जब तक आप स्पष्ट बनाया है intents (अन्य एप्लिकेशन डेवलपर के साथ काम किया या जिस ऐप को एम्बेड करना चाहते हैं उसे बनाया है) यह संभव नहीं होगा।

सैंडबॉक्स में प्रत्येक Android एप्लिकेशन रन: http://developer.android.com/guide/topics/security/security.html

विशेष रूप से:

एक दूसरे से एंड्रॉयड सैंडबॉक्स अनुप्रयोगों, अनुप्रयोगों स्पष्ट रूप से संसाधनों और डेटा साझा करना चाहिए। वे को अतिरिक्त क्षमताओं के लिए आवश्यक अनुमतियों को द्वारा प्रदान किए गए अनुमतियों को मूल सैंडबॉक्स द्वारा घोषित करके करते हैं। एप्लिकेशन स्थिर रूप से अनुमति की अनुमति देते हैं, और एंड्रॉइड सिस्टम उपयोगकर्ता को पर एप्लिकेशन इंस्टॉल होने के समय सहमति के लिए संकेत देता है। एंड्रॉइड के पास गतिशील रूप से (रन-टाइम पर) अनुमति देने के लिए कोई तंत्र नहीं है क्योंकि यह सुरक्षा के नुकसान के लिए उपयोगकर्ता अनुभव जटिल करता है।

इसलिए यह संभव नहीं होगा। ऐसा लगता है कि यह भ्रमित या दुर्भावनापूर्ण प्रतीत होता है, लेकिन मैं गंभीरता से आपके दृष्टिकोण पर पुनर्विचार करता हूं और आपके द्वारा पूछे जाने वाले कार्यों को प्राप्त करने में सक्षम होने की संभावना के खिलाफ वजन घटाने पर पुनर्विचार करता हूं।

+1

अच्छा स्पष्टीकरण ..... –

1

मेरी राय में यह संभव नहीं है।

आप केवल TabHost के अंदर अपनी खुद की सक्रियताओं को प्रदर्शित कर सकते हैं। बाहरी गतिविधियों के लिए आपको एक अंतर्निहित इरादे की आवश्यकता होगी, लेकिन TabHost इसका समर्थन नहीं करता है: Embed external Intent in main Activity

इसके लिए आप अपनी गतिविधि में किसी विदेशी एप्लिकेशन से डेटा प्रदर्शित करते हैं। ऐसा करें, आप अपनी सूची गतिविधि में सामग्री प्रदाता से पूछताछ करते हैं (http://developer.android.com/guide/topics/providers/content-providers.html देखें) (http://developer.android.com/reference/android/app/ListActivity.html पर एक पूर्ण उदाहरण देखें) और अपने टैबहोस्ट में इस ListActivity को शामिल करें।

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