[英]Can we send sms to other non android device using SmsManager?
[英]Can't send a SMS using SmsManager in android
I want to send a sms from my android phone but it doesn't work.
這是我的代碼:
public class MainActivity extends Activity{
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void sendMessage(View view){
String msg,number;
number= "***********";
msg="This is a message";
try{
SmsManager smsManager = SmsManager.getDefault();
smsManager.sendTextMessage(number, null, msg,null,null);
Toast.makeText(getApplicationContext(), "SMS sent.",
Toast.LENGTH_LONG).show();
}catch(Exception ex){
Toast.makeText(getApplicationContext(),"SMS failed, please try again.",Toast.LENGTH_LONG).show();
ex.printStackTrace();
}
}
我包含“ uses-permission android:name =“ android.permission.SEND_SMS””,我從Android手機運行此代碼,但未發送任何消息。 如果有任何錯誤,我怎么能看到這些錯誤以及如何解決。 請幫助我。謝謝。
<uses-permission android:name="android.permission.SEND_SMS" />
根據您的代碼,問題在於您尚未調用sendMessage
方法。
單擊按鈕時,您需要執行一項操作。 Google在Android上是如何做到的。 解決之后,您應該可以使按鈕單擊以調用sendMessage
方法。
另外,您將需要知道如何查看錯誤日志。 有許多應用程序可讓您執行此操作。 知道如何查看錯誤日志非常重要,這樣,如果您的Toast最終彈出,您就可以檢查日志以了解發生這種情況的原因。
我想如果您觸發按鈕單擊,那么您在代碼中的某些位置有sendMessage()嗎? sendTextMessage運作良好。 無論如何,請確保您已驗證數字是否為null或格式錯誤。 這可能會導致問題。 還要確保您使用的是正確的SMSMAnager(android.telephony.SmsManager),而不是android.telephony.gsm.SmsManager。 還需要SEND_SMS權限。
我解決了問題。實際上問題出在雙卡雙待上。 而且我總是停用我的第一個sim(Sim1)。 但這是問題所在。我的應用程序始終會找到我的第一個sim短信中心號碼,但我停用了Sim1。現在我激活了我的第一個sim卡,此方法就可以了。感謝大家的回答和幫助
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.