2012-03-06 24 views
16

मैं जानना चाहता हूं कि हमारे आवेदन के लिए IntentSender कक्षा का उद्देश्य क्या है? हम अपने आवेदन में इसका उपयोग कैसे करते हैं?IntentSender का उद्देश्य क्या है?

क्या The Android Intent Based APIs: Part Seven – IntentSenders And PendingIntents के अलावा कोई अच्छा उदाहरण हैं?

+0

निश्चित रूप से यह निर्भर करता है कि आपका एप्लिकेशन क्या करने का प्रयास कर रहा है? –

+0

@Stev_k: धन्यवाद, किसी भी कोड उदाहरण और 'IntentSender' के बारे में अच्छा ट्यूटोरियल ... –

उत्तर

7

IntentSender अमूर्त या गोंद वर्ग का एक स्तर है कि आप

  1. करने की अनुमति देता प्रसारण प्राप्त करें उपयोगकर्ता चयनकर्ता में आवेदन का चयन करता है की तरह है।

    उदाहरण है जब आप का उपयोग IntentSender:

    Intent intent = new Intent(Intent.ACTION_SEND) 
        .putExtra(Intent.EXTRA_TEXT, "This is my text to send.") 
        .setType("text/plain"); 
    Intent receiver = new Intent(this, BroadcastTest.class) 
        .putExtra("test", "test"); 
    PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 0, receiver, PendingIntent.FLAG_UPDATE_CURRENT); 
    Intent chooser = Intent.createChooser(intent, "test", pendingIntent.getIntentSender()); 
    startActivity(chooser); 
    
  2. प्रारंभ Activity साथ IntentSender बजाय Intent (अधिक Android docs में)

    startIntentSender(IntentSender intent, Intent fillInIntent, int flagsMask, int flagsValues, int extraFlags, Bundle options)

    startActivity(Intent, Bundle) की तरह, लेकिन एक IntentSender उठाने के लिए हमारी ।

+1

आपके उत्तर के लिए धन्यवाद। यह ध्यान देने योग्य है कि डेवलपर '(घटक नाम) intent.getExtras() का उपयोग कर सकता है। चयनित आवेदन जानकारी (पैकेज नाम, आदि ...) प्राप्त करने के लिए अपने रिसीवर 'onReceive()' विधि में पार्ससेलबल (EXTRA_CHOSEN_COMPONENT) प्राप्त करें। –

2

IntentSender के लिए आधिकारिक Android डेवलपर दस्तावेज़ स्पष्ट रूप से कहा गया है:

इस वर्ग के उदाहरण PendingIntent.getIntentSender() के साथ सीधे नहीं बनाया जा सकता, बल्कि बनाया जाना चाहिए एक मौजूदा PendingIntent से।

तो, आप इस वर्ग को कोड नमूना या ट्यूटोरियल में सीधे इस्तेमाल नहीं करना चाहिए (देखना चाहिए)।

PendingIntent के लिए, यह मूल रूप से एक टोकन है जिसे आप किसी अन्य एप्लिकेशन को देते हैं जो उस एप्लिकेशन को आपके ऐप के कोड के एक विशिष्ट टुकड़े को निष्पादित करने के लिए आपके ऐप की अनुमतियों का उपयोग करने की अनुमति देता है।

Here's an examplePendingIntent कक्षा में उपयोग किया जाता है।

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