Intent-এর প্রকার জানার আগে জানুন Intent কী। Intent হলো একটি অ্যাকশন পারফর্ম করার জন্য। এটি প্রধানত এক্টিভিটি শুরু করতে, ব্রডকাস্ট রিসিভার পাঠাতে, সার্ভিস শুরু করতে এবং দুটি এক্টিভিটির মধ্যে মেসেজ পাঠাতে ব্যবহার হয়। Android-এ দুটি ধরণের Intent রয়েছে: Implicit Intents এবং Explicit Intents।

Explicit Intent
এটি অ্যাপ্লিকেশনের ইন্টারন্যাল ওয়ার্ল্ডকে কানেক্ট করে: যেমন এক্টিভিটি শুরু করা বা দুটি এক্টivitির মধ্যে ডেটা পাঠানো। নতুন এক্টিভিটি শুরু করতে Intent অবজেক্ট তৈরি করে সোর্স এবং ডেস্টিনেশন এক্টিভিটি পাস করতে হয়:
Intent send = new Intent(MainActivity.this, SecondActivity.class); startActivity(send);
দ্বিতীয় এক্টিভিটি Manifest.xml-এ ডিক্লেয়ার করা থাকতে হবে, নয়লে রানটাইম এক্সেপশন হবে।
<activity android:name=".SecondActivity"></activity>
Implicit Intents
এটি বাহ্যিক অ্যাপ্লিকেশনের সাথে কানেক্ট করে: যেমন কল, মেইল, ফোন, ওয়েবসাইট দেখা ইত্যাদি। Implicit intent-এ setAction() দিয়ে অ্যাকশন পাস করতে হয়:
Intent i = new Intent();
i.setAction(Intent.ACTION_VIEW);
i.setData(Uri.parse("www.tutorialspoint.com"));
startActivity(i);
এখানে ACTION_VIEW অ্যাকশন দেওয়া হয়েছে, তাই setData()-এ দেওয়া কন্টেন্ট দেখাবে।
setData() - শুধু URI স্পেসিফাই করে। setType() - MIME টাইপ স্পেসিফাই করে। setDataAndType() - URI এবং MIME টাইপ দুটোই স্পেসিফাই করে।
Explicit Intent উদাহরণ: ওয়েবসাইট খোলা
ধাপ ১: Android Studio-এ নতুন প্রজেক্ট তৈরি করুন
ধাপ ২: res/layout/activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<android.support.constraint.ConstraintLayout
xmlns:android="https://schemas.android.com/apk/res/android"
xmlns:tools="https://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent">
<LinearLayout
android:layout_width="match_parent"
android:layout_height="match_parent"
android:gravity="center"
android:orientation="vertical">
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="Start website"
android:id="@+id/send"/>
</LinearLayout>
</android.support.constraint.ConstraintLayout>
ধাপ ৩: src/MainActivity.java
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.view.View;
import android.widget.Button;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button send = findViewById(R.id.send);
send.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent i = new Intent();
i.setAction(Intent.ACTION_VIEW);
i.setData(Uri.parse("https://www.tutorialspoint.com"));
startActivity(i);
}
});
}
}
ধাপ ৪: AndroidManifest.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" />
</intent-filter>
</activity>
</application>
</manifest>
অ্যাপ্লিকেশন রান করুন।

'Start website' বাটনে ক্লিক করলে tutorialspoint ওয়েবসাইটে রিডাইরেক্ট হবে।
