एक इंटेंट फ़िल्टर IntentFilter वर्ग का एक उदाहरण है। इंटेंट फिल्टर इंटेंट इंटेंट का उपयोग करते समय मददगार होते हैं, यह जावा कोड में हैंडल नहीं करने वाला है, हमें इसे AndroidManifest.xml में सेट करना होगा। एंड्रॉइड को पता होना चाहिए कि वह किस तरह का इरादा लॉन्च कर रहा है, इसलिए इंटेंट फिल्टर एंड्रॉइड को इरादे और कार्यों के बारे में जानकारी देते हैं।
इंटेंट लॉन्च करने से पहले, एंड्रॉइड एक्शन टेस्ट, कैटेगरी टेस्ट और डेटा टेस्ट करने जा रहा है। यह उदाहरण दर्शाता है कि एंड्रॉइड में इंटेंट फिल्टर का उपयोग कैसे करें।
चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक्ट पर जाएं और एक नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें।
दूसरा चरण - निम्न कोड को res/layout/activity_main.xml. . में जोड़ें
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="https://schemas.android.com/apk/res/android" xmlns:app="https://schemas.android.com/apk/res-auto" xmlns:tools="https://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:gravity="center" android:orientation="vertical" tools:context=".MainActivity"> <Button android:id="@+id/buton" android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="intent filter button" /> </LinearLayout>
उपरोक्त में, हमने एक बटन दिया है जब आप बटन पर क्लिक करेंगे तो यह कार्रवाई के साथ आशय दिखाएगा।
चरण 3 - निम्न कोड को src/MainActivity.java . में जोड़ें
package com.example.andy.myapplication; import android.content.Intent; import android.os.Bundle; import android.support.v7.app.AppCompatActivity; import android.view.View; import android.widget.Button; import android.widget.RadioButton; public class MainActivity extends AppCompatActivity { RadioButton radioButton; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); final Button button = findViewById(R.id.buton); button.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { Intent intent = new Intent(Intent.ACTION_SEND); intent.setType("message/rfc822"); intent.putExtra(Intent.EXTRA_EMAIL, new String[]{"[email protected]"}); intent.putExtra(Intent.EXTRA_SUBJECT, "Welcome to tutorialspoint.com"); startActivity(Intent.createChooser(intent, "Choose default Mail App")); } }); } }
उपरोक्त में जब उपयोगकर्ता बटन पर क्लिक करता है तो यह ACTION_SEND का उपयोग करके आशय को कॉल करेगा और संदेश/rfc882 के रूप में प्रकार सेट करेगा। अब हमने ईमेल आईडी और विषय संदेश पास कर दिया है।
चरण 4 - निम्न कोड को manifest.xml . में जोड़ें
<?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android="https://schemas.android.com/apk/res/android" package="com.example.andy.myapplication"> <uses-permission android:name="android.permission.INTERNET" /> <application android:allowBackup="true" android:icon="@mipmap/ic_launcher" android:label="@string/app_name" android:roundIcon="@mipmap/ic_launcher_round" android:supportsRtl="true" android:theme="@style/AppTheme"> <activity android:name=".MainActivity"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> <action android:name="android.intent.action.SEND" /> <category android:name="android.intent.category.DEFAULT" /> <data android:mimeType="message/rfc822" /> </intent-filter> </activity> </application> </manifest>
उपरोक्त में हमने कार्रवाई, श्रेणी और डेटा घोषित किया है। आइए अपना एप्लिकेशन चलाने का प्रयास करें। मुझे लगता है कि आपने अपने वास्तविक Android मोबाइल डिवाइस को अपने कंप्यूटर से कनेक्ट कर लिया है। एंड्रॉइड स्टूडियो से ऐप चलाने के लिए, अपने प्रोजेक्ट की गतिविधि फ़ाइल में से एक खोलें और टूलबार से रन आइकन पर क्लिक करें। एक विकल्प के रूप में अपने मोबाइल डिवाइस का चयन करें और फिर अपने मोबाइल डिवाइस की जांच करें जो आपकी डिफ़ॉल्ट स्क्रीन प्रदर्शित करेगा -
ऊपर दिए गए बटन पर क्लिक करें, यह इंटेंट से डेटा भेजने के लिए एप्लिकेशन चुनने के लिए इंटेंट चयनकर्ता को कॉल करेगा जैसा कि नीचे दिखाया गया है -
हमने नीचे दिखाए अनुसार gmail एप्लिकेशन का चयन किया है -
उपरोक्त परिणाम में, यह इरादे से डेटा लेने और gmail एप्लिकेशन में संलग्न करने जा रहा है।