2010-05-27 25 views
21

मैं समझता हूं कि अपने ऐप के भीतर एक और गतिविधि खोलते समय इरादों और स्टार्ट एक्टिविटी() का उपयोग कैसे करें, लेकिन आप एक अलग ऐप कैसे शुरू करते हैं? विशेष रूप से:एंड्रॉइड: मैं अपने ऐप से एक और ऐप कैसे खोलूं?

  • आप कैसे निर्धारित करते हैं कि उपयोगकर्ता के पास उनके डिवाइस पर आवश्यक ऐप इंस्टॉल है या नहीं?
  • आप उस ऐप को कैसे शुरू करते हैं?
  • आप उस ऐप के पैरामीटर कैसे पास करते हैं?
  • आप एक विशिष्ट ऐप के लिए यह जानकारी कैसे प्राप्त करते हैं (एडोब रीडर या Google मानचित्र कहें)?

उत्तर

32

कैसे करता है, तो आशय उपलब्ध है देखने के लिए: अगर यह उपलब्ध नहीं है

  1. आशय कॉल करके देखें और ActivityNotFoundException से निपटने के

    Intent intent = new Intent(Intent.ACTION_VIEW); 
    intent.setDataAndType(path, "application/pdf"); 
    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 
    
    try { 
        startActivity(intent); 
    } 
    catch (ActivityNotFoundException e) { 
        Toast.makeText(OpenPdf.this, 
         "No Application Available to View PDF", 
         Toast.LENGTH_SHORT).show(); 
    } 
    

    या

  2. PackageManager packageManager = getPackageManager(); 
    Intent intent = new Intent(Intent.ACTION_VIEW); 
    intent.setType("application/pdf"); 
    
    List list = packageManager.queryIntentActivities(intent, 
        PackageManager.MATCH_DEFAULT_ONLY); 
    
    if (list.size() > 0) { 
        intent.setDataAndType(path, "application/pdf"); 
        startActivity(intent); 
    } 
    

कैसे एक आवेदन करने के लिए पैरामीटर भेजने या अपनी क्षमताओं को पता है:

  1. List of Available Intents for Google Applications
  2. List of Intents by 3rd parties @ OpenIntents
अगर यह समय से आगे है Query the Package Manager को देखने के लिए
+0

यह एंड्रॉइड काम नहीं कर रहा है 7.0 कृपया उत्तर अपडेट करें – Mariyappan

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