بدست آوردن اطلاعات گوشی با استفاده از TelePhonyManager در اندروید
دوشنبه 14 دی 1394در این مقاله قصد داریم با استفاده از TelePhonyManager اطلاعات گوشی خود را مثل شماره سریال ، id گوشی ، خط استفاده شده ، نوع تلفن و... را بدست آوریم.
برای این کار ما از یک TelePhonyManager استفاده کرده ایم، که با استفاده از آن تمام جزئیات گوشی را برای ما نمایش خواهد داد، البته شما نیاز دارید مجوز دسترسی به گوشی خود را در فایل androidmanifest بنویسید.
getDeviceId:گرفتن شناسه ی دستگاه
getSimSerialNumber:شماره سریال سیم کارت را به شما می دهد.
getNetworkCountryIso:این کد ISO شبکه هر کشور را مشخص می کند.
getSimCountryIso:این کد ISO سیم هر کشور را مشخص می کند.
getDeviceSoftwareVersion:این کد ISO دستگاه هر کشور را به صورت رشته مشخص می کند.
getVoiceMailNumber:شماره پست صوتی را بر می گرداند.
getSimOPeration number:شماره سیم کارت اپراتور را بر می گرداند.
getNetwork:نوع شبکه را بر می گرداند.
getPhoneType:نوع گوشی مورد نظر را بر می گرداند.
داخل فایل androidmanifest دسترسی زیر را قرار می دهیم:
<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>
قدم اول :یک پروژه ی جدیدی ایجاد نمایید.
داخل لایه ی activity قطعه کد زیر را قرار دهید:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" tools:context=".MainActivity"> <TextView android:id="@+id/textView" android:layout_width="wrap_content" android:layout_height="wrap_content" android:textSize="20dp" android:text="جزئیات گوشی " android:layout_centerHorizontal="true" android:padding="20px"/> </RelativeLayout>
حالا نوبت به نوشتن کلاس جاواست که داخل آن از متد TelePhonyManager استفاده نمایید،
package com.barnamenevisan.image; import android.content.Context; import android.os.Bundle; import android.app.Activity; import android.telephony.TelephonyManager; import android.view.Menu; import android.widget.TextView; public class MyActivity extends Activity { TextView textView; String setType; /** * Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); textView = (TextView) findViewById(R.id.textView); TelephonyManager telephonyManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); String deviceId = telephonyManager.getDeviceId(); String simSerialNumber = telephonyManager.getSimSerialNumber(); String networkCountryIso = telephonyManager.getNetworkCountryIso(); String simCountryIso = telephonyManager.getSimCountryIso(); String deviceSoftwareVersion = telephonyManager.getDeviceSoftwareVersion(); String voiceMailNumber = telephonyManager.getVoiceMailNumber(); String simOperatorName = telephonyManager.getSimOperatorName(); int networkType = telephonyManager.getNetworkType(); if(telephonyManager.getPhoneType()==1) { setType="GSM"; } textView.setText("deviceid:" + deviceId + "" + "\n simSerialNumber:" + simSerialNumber + "" + " \n networkCountryIso :" + networkCountryIso + "" + "\n simCountryIso :" + simCountryIso + "" + "\n deviceSoftwareVersion :" + deviceSoftwareVersion + "" + "\n voiceMailNumber :" + voiceMailNumber + "" + "\nNetworkType: " + networkType + "" + "\nsimOperatorName: " + simOperatorName+""+"\nphoneType:"+setType+""+"\nnetworkType:"+networkType); } }
شما با استفاده از متد TelephonyManager اطلاعات گوشی خود را می توانید دریافت کنید که با تعریف این متد ، متد های دیگری را برای شما فراهم می نماید و با صدا زدن هر کدام اطلاعات گوشی خود داخل textview نمایش داده خواهد شد.
خروجی به صورت زیر خواهد بود:
- Android
- 4k بازدید
- 4 تشکر