Отправка на Email, данные из базы данных

193
23 марта 2018, 12:28

Ситуация такова, пытаюсь отправить сообщение на email, данные берутся из бд (firebase). Сообщение отлично отправляется. Но после мне надо удалить эти данные, и после удаления и перехода на Main_Activity у меня выскакивает форма Intent.createChooser.

Код отправки сообщения: @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.email_menu, menu); return super.onCreateOptionsMenu(menu); }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        if (item.getItemId() == R.id.action_email) {
            sendMail();    
        }        
        return super.onOptionsItemSelected(item);
    }
    private void sendMail() {
        mDatabase.child(mPost_key).addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
               String TO = (String) dataSnapshot.child("email").getValue();
               String MESSAGE = (String) dataSnapshot.child("nomerGruz").getValue();
                Intent sendIntent = new Intent(Intent.ACTION_SEND);
                sendIntent.setType("plain/text");
                sendIntent.putExtra(Intent.EXTRA_EMAIL, new String[]{TO});
                sendIntent.putExtra(Intent.EXTRA_SUBJECT, SUBJECT);
                sendIntent.putExtra(Intent.EXTRA_TEXT, "Номер груза" + MESSAGE);
                startActivity(Intent.createChooser(sendIntent, "Выберите приложение"));
            }
            @Override
            public void onCancelled(DatabaseError databaseError) {
            }
        }); 
    }

Код удаления:

 mDatabase.child(mPost_key).addValueEventListener(new ValueEventListener() {
            @Override
            public void onDataChange(DataSnapshot dataSnapshot) {
                String post_gruz = (String) dataSnapshot.child("nomerGruz").getValue();
                String post_naklad = (String) dataSnapshot.child("nomerNaklad").getValue();
                String post_email = (String) dataSnapshot.child("email").getValue();
                String post_kategor = (String) dataSnapshot.child("kategor").getValue();
                String post_ves = (String) dataSnapshot.child("ves").getValue();
                String post_gabar = (String) dataSnapshot.child("gabar").getValue();
                mGruzSingleNomer.setText("Номер груза: " + post_gruz);
                mGruzSingleNaklad.setText("Номер накладной: " + post_naklad);
                mGruzSingleEmail.setText("Email отправителя: " + post_email);
                mGruzSingleKategor.setText("Категория: " + post_kategor);
                mGruzSingleVes.setText("Вес: " + post_ves);
                mGruzSingleGabar.setText("Габариты: " + post_gabar); 
            }
            @Override
            public void onCancelled(DatabaseError databaseError) {
            }
        }); 
        mGruzSingleOtprav.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                createChannels();
                Notification.Builder builder = getPhenomCSXChannelNotification();
                getManager().notify(new Random().nextInt(), builder.build());
                    mDatabase.child(mPost_key).removeValue();
                    Intent mainIntent = new Intent(GruzSingleActivity.this, MainActivity.class);
                    startActivity(mainIntent);
            }
        });
    }
READ ALSO
Как динамически добавлять фрагмент в layout

Как динамически добавлять фрагмент в layout

Как добавить фрагмент в разметку по нажатию кнопки? Существующий конструктор FragmentTransaction требует id: FragmentTransactionadd(int containerViewId, Fragment fragment, String...

114
Генерация вложенных Id-классов в Hibernate Tools

Генерация вложенных Id-классов в Hibernate Tools

Есть база, в которой много таблиц не имеют Primary KeyИспользую автогенератор Entity из Hibernate Tools, который для таких таблиц генерирует отдельный Id-класс

149
Selenium WebDriver запуск группы тестов в одном экземпляре браузера

Selenium WebDriver запуск группы тестов в одном экземпляре браузера

Сейчас мои класс с тестами выглядит примерно такТо есть браузер запускается снова и снова для каждого теста Можно ли как-то сделать так, что...

136