отправка СМС из программы.

Ответить
Omax
Сообщения: 33
Зарегистрирован: 04 окт 2015, 11:20

отправка СМС из программы.

Сообщение Omax » 11 окт 2015, 18:29

Приветствую всех!!!

сделал програмку:
отправляет смс на номер( выбранный из RadioGroup )

а в текст вставляется число из EditText, текст и еще одно значение из выбора RadioGroup .

Код: Выделить всё

public class MainActivity extends AppCompatActivity {

    RadioGroup rgContact;
    RadioGroup rgWeek;
    EditText editText;




    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
        rgContact = (RadioGroup)findViewById(R.id.rgContact);
        rgWeek = (RadioGroup)findViewById(R.id.rgWeek);
        editText =(EditText)findViewById(R.id.editText);
        setSupportActionBar(toolbar);




        FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab);
        fab.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {

                String num_1 = "10";

                switch (rgContact.getCheckedRadioButtonId()) {
                    case R.id.rbTanya:
                        num_1 = "+79149920600";
                        break;
                    case R.id.rbMisha:
                        num_1 = "+79149920600";
                        break;
                    case R.id.rbAnton:
                        num_1 = "+79149920600";
                        break;

                }
                String day = "барсик";

                switch (rgWeek.getCheckedRadioButtonId()) {
                    case R.id.rbMonday:
                        day= "понедельник";
                        break;
                    case R.id.rbFriday:
                        day= "среду";
                        break;
                    case R.id.rbWednesday:
                        day= "пятницу";
                        break;
                }
                String kol_1 = editText.getText().toString();


                SmsManager smsManager = SmsManager.getDefault();
                smsManager.sendTextMessage(num_1, null,kol_1 + " буханок хлеба на " + day , null, null);
                Toast.makeText(getApplicationContext(),
                        "SMS отправлено!",Toast.LENGTH_LONG).show();

            }
        });

    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.menu_main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();

        //noinspection SimplifiableIfStatement
        if (id == R.id.action_settings) {
            return true;
        }

        return super.onOptionsItemSelected(item);
    }
}
Номер был вбит один для проверки..
Сначала пытался вбить номера через строковый ресурс.. чет не получилось...

ну все работает..
ВОПРОС: хочу через Setting менять номера телефонов...
добавил туда еще 3 item, как сделать чтобы при нажатии выходило поле для ввода номера? и введенный номер (значение) присваивался переменным (num_2,num_3,num_4)
можно же и так сделать как ниже?

Код: Выделить всё

String num_1 = "10";
          String num_2 = "+79622828282"
          String num_3 = "+79623555555"
          String num_4 = "+79099999999"

                switch (rgContact.getCheckedRadioButtonId()) {
                    case R.id.rbTanya:
                        num_1 = num_2";
                        break;
                    case R.id.rbMisha:
                        num_1 = num_3;
                        break;
                    case R.id.rbAnton:
                        num_1 = num_4;
                        break;

                }

Ответить