Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> 調用Android硬件服務相關的方法

調用Android硬件服務相關的方法

編輯:關於Android編程

調用Android硬件服務相關的方法

我們在做安卓開發的時候 會常常用到系統自帶一些服務 現在進行了一個總結
/**
* 默認的IMSI號
*/
private static final String IMSI_DEFAULT = "460000000000000";
private static final String IMEI_DEFAULT = "000000000000000";

/**
* 提供短信發送功能. 短信將自動判斷內容長度,切分短信發送.
*
* @param telNum 目標短信接收者號碼
* @param message 短信內容.
*/
public static void sendSms(String telNum, String message) {

if (message != null) {
// 移動運營商允許每次發送的字節數據有限,我們可以使用Android給我們提供 的短信工具。
SmsManager smsMgr = SmsManager.getDefault();
// 如果短信沒有超過限制長度,則返回一個長度的List。
List texts = smsMgr.divideMessage(message);
for (String text : texts) {
smsMgr.sendTextMessage(telNum, null, text, null, null);
Log.d("SMSSender", "send a message");
}
}else{
throw new IllegalArgumentException();
}
}


/**
* 檢測網絡連接是否是cmwap
* 如果是的話需要設置代理
* @param context
* @return
*/
public static boolean isWap(Context context){
//ConnectivityManager主要管理和網絡連接相關的操作
ConnectivityManager cm =(ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo nInfo = cm.getActiveNetworkInfo();
if(nInfo == null || nInfo.getType() != ConnectivityManager.TYPE_MOBILE)
return false;
String extraInfo = nInfo.getExtraInfo();
if(extraInfo == null || extraInfo.length() < 3)
return false;
if(extraInfo.toLowerCase().contains("wap"))
return true;
return false;
}

/**
* 獲取Imsi號
* @param context
* @return
*/
public static String getIMSI(Context context) {
TelephonyManager telephonyManager = (TelephonyManager)
context.getSystemService(Context.TELEPHONY_SERVICE);
String imsi = telephonyManager.getSubscriberId();
if(imsi == null || imsi.equals("")){
imsi = IMSI_DEFAULT;
}
return imsi;
}

/**
* 獲取Imei號
* @param context
* @return
*/
public static String getIMEI(Context context) {
TelephonyManager telephonyManager=(TelephonyManager)
context.getSystemService(Context.TELEPHONY_SERVICE);
String imei=telephonyManager.getDeviceId();
if(imei == null || imei.equals("")){
imei = IMEI_DEFAULT;
}
return imei;
}

/**
* 獲取手機機型
* @return
*/
public static String getModel(){
return Build.MODEL;
}



/**
* 判斷當前手機是否開啟了GPS
* 對應GPS_PROVIDER
* @return
*/
public static boolean isGPSEnabled(Context context){
LocationManager mLocationManager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);
if(mLocationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)){
return true;
}
return false;
}



/**
* 判斷手機當前的網絡狀況
* 1.是否開啟WIFI
* 2.是否開啟蜂窩數據
* 對應NETWORK_PROVIDER
* @return
*/
public static boolean isNetworkEnabled(Context context){
return (isTelephonyEnabled(context) || isWIFIEnabled(context));
}


/**
* 判斷移動網絡是否開啟
* @return
*/
private static boolean isTelephonyEnabled(Context context) {
boolean enable = false;
TelephonyManager telephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
if (telephonyManager != null) {
if (telephonyManager.getNetworkType() != TelephonyManager.NETWORK_TYPE_UNKNOWN) {
enable = true;
}
}
return enable;
}

/**
* 判斷wifi是否開啟
*/
private static boolean isWIFIEnabled(Context context) {
boolean enable = false;
WifiManager wifiManager = (WifiManager)context.getSystemService(Context.WIFI_SERVICE);
if(wifiManager.isWifiEnabled()) {
enable = true;
}
return enable;
}

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved