2015-01-07 2 views
0

Я пытаюсь создать приложение, в котором я хочу отправить сообщение, одним нажатием кнопки. Я дал разрешение в файле манифеста Android.Как отправить sms через приложение для Android?

<uses-permission android:name="android.permission.SEND_SMS"/> 

Я использую следующий код.

package com.example.validateemail; 

import android.os.Bundle; 
import android.support.v7.app.ActionBarActivity; 
import android.telephony.SmsManager; 
import android.view.View; 
import android.view.View.OnClickListener; 
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.Toast; 

public class SendSMSActivity extends ActionBarActivity { 

    Button btnSendSMS; 
    EditText etSMS, etNo; 


    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_send_sms); 

     etSMS = (EditText) findViewById(R.id.etSMS); 
     etNo = (EditText) findViewById(R.id.etNo); 
     btnSendSMS = (Button) findViewById(R.id.btnSendSMS); 

     final String message = etSMS.getText().toString(); 
     final String number = etNo.getText().toString(); 


     btnSendSMS.setOnClickListener(new OnClickListener() { 


      public void onClick(View v) { 

       try { 
        SmsManager smsManage = SmsManager.getDefault(); 
        smsManage.sendTextMessage(number, null, message, null, null); 
        Toast.makeText(getApplicationContext(), "SMS sent.", Toast.LENGTH_LONG).show(); 



       } catch (Exception e) { 
         Toast.makeText(getApplicationContext(), "SMS failed", Toast.LENGTH_LONG).show(); 

       } 

      } 
     }); 

    } 
} 

Проблема здесь я не могу отправить сообщение, и оно показывает тост «Failed Msg», который я упоминал в исключение. В Log Cat нет исключения.

Может ли кто-нибудь сказать мне, что я здесь делаю неправильно?

Я новичок в разработке Android. Любая помощь будет оценена. Спасибо.

+0

Вы используете код? –

+0

добавить e.printStackTrace(); к вашему улову и дать возвращаемую трассировку стека –

ответ

1

Вы импортируете устаревший класс SmsManager. Измените свой импорт на android.telephony.SmsManager и используйте sendTextMessage() оттуда.

+0

Спасибо @FD_ Да, я избавился от этого обесцененного сообщения, но сообщение не отправляется. Я редактирую свой оригинальный пост со всем классом. – LazyBones

0

этим руководством и использовать android.telephony.SmsManager:

tutorial link Кроме того, знаете ли вы, что вы можете отправить SMS multiple ways?

+0

спасибо @No aNoNym. Можете ли вы помочь мне, почему я получаю исключение? – LazyBones

+0

Plz дает исключение, возможные ошибки ... @sshah –

+0

Проблема в том, что я не получаю исключение в своем Log Cat, но я получаю сообщение «SMS failed» как отображение. – LazyBones

0

PlugBunch.com является одной из медиа-платформ для предпринимателей и частных лиц, посвященных страстному отстаиванию и продвижению предпринимательской экосистемы в мире. Мы предоставляем сторонние плагины для плагинов Apache. Букет для каждого, кто любит проект Apache Foundation cordova , http://www.plugbunch.com/