簡體   English   中英

檢查手機是否可以發送短信

[英]Check if a phone can send SMS

我已經閱讀了一些相關的問題,但大多數都是針對電話,而不是短信。 到目前為止我發現的是:

TelephonyManager manager = (TelephonyManager) context
        .getSystemService(Context.TELEPHONY_SERVICE);
if (manager.getPhoneType() == TelephonyManager.PHONE_TYPE_NONE) {
    // I guess here are devices that are unable to send SMS
} else {
    // can send SMS
}

這是真的,TelephonyManager.PHONE_TYPE_NONE的設備無法發送短信嗎? 我真的不明白TelephonyManager.PHONE_TYPE_NONE的描述,這是“沒有電話無線電”。

謝謝!

是的,使用TelephonyManager.PHONE_TYPE_NONE,您無法發送短信。由於無線電網絡需要發送短信。 但是你可以使用一些基於IP的信使,比如whats app,ebuddy就可以了

如果您看到android.hardware.telephony (您在Android清單文件中使用uses-feature標簽指定),您會注意到此功能下提到了發送/讀/寫SMS。

Galaxy TAB示例,無法撥打電話仍然是電話類型來自PHONE_TYPE_CDMA ,因此在此類情況下需要添加額外的行號檢查,如上面的鏈接所示

使用以下代碼:

Boolean canSendSMS (Context context)
{
PackageManager pm = context.getPackageManager();
return (pm.hasSystemFeature(PackageManager.FEATURE_TELEPHONY) || pm.hasSystemFeature(PackageManager.FEATURE_TELEPHONY_CDMA))
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM