কম্পিউটার টিউটোরিয়াল

এন্ড্রয়েডে বর্তমান Wi-Fi MAC অ্যাড্রেস পাওয়ার উপায়

এন্ড্রয়েডে WifiManager ব্যবহার করে Wi-Fi MAC অ্যাড্রেস জানা

এই উদাহরণে দেখানো হয়েছে কিভাবে WifiManager ব্যবহার করে সংযুক্ত Wi-Fi নেটওয়ার্কের MAC অ্যাড্রেস প্রোগ্রাম্যাটিক্যালি পাওয়া যায়।

পদক্ষেপ ১: নতুন প্রজেক্ট তৈরি করুন

Android Studio-তে File → New Project এ যান এবং প্রজেক্টের জন্য প্রয়োজনীয় বিবরণ পূরণ করুন।

পদক্ষেপ ২: লেআউট ফাইল সংশোধন করুন (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:gravity="center"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <TextView
        android:id="@+id/text"
        android:textSize="30sp"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />

</LinearLayout>

পদক্ষেপ ৩: MainActivity.java-তে লজিক যোগ করুন

package com.example.myapplication;

import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.os.Build;
import android.os.Bundle;
import android.support.annotation.RequiresApi;
import android.support.v7.app.AppCompatActivity;
import android.widget.TextView;

public class MainActivity extends AppCompatActivity {
    TextView textView;

    @RequiresApi(api = Build.VERSION_CODES.N)
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        textView = findViewById(R.id.text);

        WifiManager wifiMgr = (WifiManager) getApplicationContext().getSystemService(WIFI_SERVICE);
        WifiInfo wifiInfo = wifiMgr.getConnectionInfo();
        textView.setText("" + wifiInfo.getMacAddress());
    }

    @Override
    protected void onStop() {
        super.onStop();
    }

    @Override
    protected void onResume() {
        super.onResume();
    }
}

পদক্ষেপ ৪: AndroidManifest.xml-এ Wi-Fi পারমিশন যোগ করুন

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="https://schemas.android.com/apk/res/android"
    package="com.example.myapplication">

    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

    <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>

অ্যাপ্লিকেশন চালান

ডিভাইস কম্পিউটারের সাথে সংযুক্ত থাকলে, Android Studio-তে Run আইকনে ক্লিক করে অ্যাপটি চালান। ডিভাইসে সংযুক্ত Wi-Fi-এর MAC অ্যাড্রেস দেখাবে।

দ্রষ্টব্য: Android 6.0 (Marshmallow) এবং তার পরবর্তী ভার্সনে গোপনীয়তার কারণে MAC অ্যাড্রেস পাওয়ার জন্য đặc্য পারমিশন (LOCATION পারমিশন) এবং রানটাইম পারমিশন অনুরোধ করতে হতে পারে।
  1. অ্যান্ড্রয়েডে বর্তমান থ্রেডের নাম পাওয়ার পদ্ধতি

  2. অ্যান্ড্রয়েডে বর্তমান থ্রেড ইন্টারাপ্টেড (Interrupted) কিনা যাচাই করার পদ্ধতি

  3. অ্যান্ড্রয়েডে বর্তমান থ্রেড ডেমন (Daemon) কিনা যাচাই করার পদ্ধতি

  4. অ্যান্ড্রয়েডে বর্তমান থ্রেডের আইডি (ID) পাওয়ার পদ্ধতি