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

অ্যান্ড্রয়েডে ইউজার এজেন্ট টাইপ বা রিংগার মোড ডিটেক্ট করা

AudioManager ব্যবহার করে ডিভাইসের রিংগার মোড (সাইলেন্ট, ভাইব্রেট, নরমাল) জানা

দ্রষ্টব্য: আর্টিকেলের শিরোনামে "User Agent Type" লেখা আছে কিন্তু কোডে AudioManager-এর Ringer Mode ডিটেক্ট করা দেখানো হয়েছে। নিচে রিংগার মোড ডিটেকশনের উদাহরণ দেওয়া হলো।

ধাপ ১: প্রজেক্ট তৈরি করুন

Android Studio-তে File → New Project নির্বাচন করুন।

ধাপ ২: লেআউট (res/layout/activity_main.xml)

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout 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"
    android:padding="16dp"
    tools:context=".MainActivity">

    <TextView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="Detect Android user agent type in general"
        android:textSize="24sp"
        android:textStyle="bold"/>

</RelativeLayout>

ধাপ ৩: মেইন এক্টিভিটি (src/MainActivity.java)

import androidx.appcompat.app.AppCompatActivity;
import android.content.Context;
import android.media.AudioManager;
import android.os.Bundle;
import android.widget.Toast;
import java.util.Objects;

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        AudioManager am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
        switch (Objects.requireNonNull(am).getRingerMode()) {
            case AudioManager.RINGER_MODE_SILENT:
                Toast.makeText(MainActivity.this, "Silent Mode", Toast.LENGTH_SHORT).show();
                break;
            case AudioManager.RINGER_MODE_VIBRATE:
                Toast.makeText(MainActivity.this, "Vibrate Mode", Toast.LENGTH_SHORT).show();
                break;
            case AudioManager.RINGER_MODE_NORMAL:
                Toast.makeText(MainActivity.this, "Normal Mode", Toast.LENGTH_SHORT).show();
                break;
        }
    }
}

ধাপ ৪: মেনিফেস্ট (androidManifest.xml)

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

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

বাস্তব User Agent String পাওয়ার পদ্ধতি

যদি আপনি HTTP রিকোয়েস্টের User-Agent স্ট্রিং চান (ব্রাউজার/ওয়েবভিউর জন্য):

String userAgent = System.getProperty("http.agent");
// বা WebView-এ:
WebView webView = new WebView(this);
String ua = webView.getSettings().getUserAgentString();

ফলাফল

অ্যাপ্লিকেশন চালু হলে বর্তমান রিংগার মোড (Silent/Vibrate/Normal) টোস্ট হিসেবে দেখাবে।

অ্যান্ড্রয়েডে ইউজার এজেন্ট টাইপ বা রিংগার মোড ডিটেক্ট করা

  1. অ্যান্ড্রয়েড অ্যাপে শেক ইভেন্ট কীভাবে সনাক্ত করবেন?

  2. অ্যান্ড্রয়েডে Google Maps-এ টাচ ও অবস্থান ডিটেক্ট করা

  3. Android-এ ৫ সেকেন্ড ব্যবহারকারীর নিষ্ক্রিয়তা শনাক্ত করা

  4. অ্যান্ড্রয়েড ইউজারকে FaceTime কল করার উপায়