[英]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.