我正在編寫一個應用程序,可以選擇允許您發送短信到用戶列表。該應用程序當前檢測設備是否允許使用MFMessageComposeViewController.canSendText()發送文本消息,並在結果爲true時僅顯示「發送SMS」按鈕。如何檢測iOS短信功能(通常不是短信)
今天,我的一位用戶抱怨說,當他點擊他的Wifi專用iPad上的按鈕時,什麼都沒有發生。事實證明,如果iOS設備啓用了iMessage功能,canSendText()也會返回true,即使SMS不受支持。在iOS設置中關閉iMessage功能會正確禁用「發送短信」按鈕。
通過iMessage發送消息的問題是,某些收件人將啓用iMessage並因此收到文本消息。但對於沒有iMessage的收件人(它可能被關閉,或者他們可能沒有首先使用Apple設備),那些郵件將不會到達。 (當MFMessageComposeViewController最終出現時,這些地址被標記爲紅色,但是我的普通用戶不會理解這意味着消息不會傳遞。)
有沒有人知道測試SMS功能的可靠方法特別是,不只是短信(SMS,iMessage和MMS)一般?
這似乎是適用於大多數情況。謝謝。不過,我可以想象這種情況不適用的角落案例。例如SIM卡已過期或其計劃不允許SMS消息(例如,僅限數據)的用戶。任何想法是否也有辦法解決這些問題呢? –
@WouterLiefting:我不認爲這是可能的編程方式。對於過期的SIM卡,您可以插入該SIM卡並在代碼上方運行並檢查值。我還沒有過期的SIM卡測試,因爲我沒有。 – Maulik