আপনি যদি প্রোগ্রামের মাধ্যমে আইএমইআই নম্বরের মতো অনন্য ডিভাইস আইডি পরীক্ষা করতে চান তবে আমরা নীচের উদাহরণের মতো টেলিফোনিক ম্যাঞ্জারের মাধ্যমে এটি করতে পারি -
ধাপ 1 − অ্যান্ড্রয়েড স্টুডিওতে একটি নতুন প্রকল্প তৈরি করুন, ফাইল ⇒ নতুন প্রকল্পে যান এবং একটি নতুন প্রকল্প তৈরি করতে প্রয়োজনীয় সমস্ত বিবরণ পূরণ করুন৷
ধাপ 2 − 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: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" tools:context = ".MainActivity"> <Button android:id = "@+id/button" android:layout_width = "wrap_content" android:layout_height = "wrap_content" android:text = "Click here to hide" app:layout_constraintBottom_toBottomOf = "parent" app:layout_constraintLeft_toLeftOf = "parent" app:layout_constraintRight_toRightOf = "parent" app:layout_constraintTop_toTopOf = "parent" /> </android.support.constraint.ConstraintLayout>
ধাপ 3 − src/MainActivity.java
-এ নিম্নলিখিত কোড যোগ করুনimport android.Manifest; import android.annotation.SuppressLint; import android.app.ProgressDialog; import android.content.pm.PackageManager; import android.os.Build; import android.os.Bundle; import android.os.Handler; import android.support.annotation.RequiresApi; import android.support.v4.app.ActivityCompat; import android.support.v7.app.AppCompatActivity; import android.telephony.TelephonyManager; import android.view.View; import android.view.inputmethod.InputMethodManager; import android.widget.Button; import android.widget.EditText; import android.widget.ProgressBar; import android.widget.Toast; public class MainActivity extends AppCompatActivity implements View.OnClickListener { TelephonyManager telephonyManager; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button button = findViewById(R.id.button); button.setOnClickListener(this); } @RequiresApi(api = Build.VERSION_CODES.O) @Override public void onClick(View v) { switch (v.getId()) { case R.id.button: deviceId(); break; } } private void deviceId() { telephonyManager = (TelephonyManager) getSystemService(this.TELEPHONY_SERVICE); if (ActivityCompat.checkSelfPermission(this, Manifest.permission.READ_PHONE_STATE) != PackageManager.PERMISSION_GRANTED) { ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.READ_PHONE_STATE}, 101); return; } } @Override public void onRequestPermissionsResult(int requestCode, String[] permissions, int[] grantResults){ switch (requestCode) { case 101: if (grantResults[0] == PackageManager.PERMISSION_GRANTED) { if (ActivityCompat.checkSelfPermission(this, Manifest.permission.READ_PHONE_STATE) != PackageManager.PERMISSION_GRANTED) { ActivityCompat.requestPermissions(this, new String[]{Manifest.permission.READ_PHONE_STATE}, 101); return; } String imeiNumber = telephonyManager.getDeviceId(); Toast.makeText(MainActivity.this,imeiNumber,Toast.LENGTH_LONG).show(); } else { Toast.makeText(MainActivity.this,"Without permission we check",Toast.LENGTH_LONG).show(); } break; default: super.onRequestPermissionsResult(requestCode, permissions, grantResults); } } }
উপরের কোডে, আমরা ফোন স্টেট পড়ার রানটাইম অনুমতি দিয়েছি, ফোন স্টেট ছাড়া আমরা ডিভাইস আইডি পেতে পারি না। ডিভাইস আইডির জন্য, আপনার প্রকল্পে নিম্নলিখিত কোড যোগ করুন।
TelephonyManager telephonyManager; telephonyManager = (TelephonyManager) getSystemService(this.TELEPHONY_SERVICE); String imeiNumber = telephonyManager.getDeviceId();
পদক্ষেপ 4৷ − AndroidManifest.xml
-এ নিম্নলিখিত কোড যোগ করুন<manifest xmlns:android = "https://schemas.android.com/apk/res/android" package = "com.example.andy.myapplication"> <uses-permission android:name = "android.permission.READ_PHONE_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>
উপরের কোডে আমরা রিড ফোন স্টেট পারমিশন ঘোষণা করেছি। এটি সমস্ত ফোন স্টেট পড়তে যাচ্ছে৷
৷আপনার অ্যাপ্লিকেশন চালানোর চেষ্টা করা যাক. আমি ধরে নিচ্ছি আপনি আপনার কম্পিউটারের সাথে আপনার আসল অ্যান্ড্রয়েড মোবাইল ডিভাইসটি সংযুক্ত করেছেন৷ অ্যান্ড্রয়েড স্টুডিও থেকে অ্যাপটি চালানোর জন্য, আপনার প্রোজেক্টের অ্যাক্টিভিটি ফাইলগুলির একটি খুলুন এবং রান এ ক্লিক করুন টুলবার থেকে আইকন। একটি বিকল্প হিসাবে আপনার মোবাইল ডিভাইস নির্বাচন করুন এবং তারপরে আপনার মোবাইল ডিভাইসটি পরীক্ষা করুন যা আপনার ডিফল্ট স্ক্রীন প্রদর্শন করবে
আপনি যখন বোতামে ক্লিক করেন, তখন এটি ব্যবহারকারীর কাছ থেকে রান টাইম অনুমতি চাইবে, ব্যবহারকারীকে নীচে দেখানো আইএমইআই নম্বর পাওয়ার অনুমতি দেওয়া উচিত
উপরের কোডে আমরা IMEI নম্বর বা অনন্য নম্বর পেয়েছি (নিরাপত্তার কারণে আমরা আমাদের অনন্য নম্বর লুকিয়ে রাখি)
যখন ব্যবহারকারী রানটাইম অনুমতি প্রত্যাখ্যান করেন তখন এটি উপরের বার্তার মত দেখাবে।