【问题标题】:Sending Sms by intent but when press back button its not resuming my application有意发送短信,但当按下返回按钮时,它不会恢复我的应用程序
【发布时间】:2016-04-02 07:16:46
【问题描述】:

这是我的 sms() 函数。当调用意图时它正常工作但是当我按下后退按钮时它直接把我放在主屏幕上而不是恢复我的应用程序

public class SmsActivity extends AppCompatActivity {

    EditText number;
    Button smsBtn;
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_sms);
        number=(EditText)findViewById(R.id.etNumber);
        smsBtn=(Button)findViewById(R.id.btn_sms);

        smsBtn.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                sms(number.getText().toString());
            }
        });

    }
    void sms(String contact_number) {
        try {
            Intent i = new Intent(Intent.ACTION_VIEW);
            i.setType("vnd.android-dir/mms-sms");
            String number = "sms:" + contact_number;
            i.setData(Uri.parse(number));
            startActivity(i);

        } catch (ActivityNotFoundException e) {
            Toast.makeText(getParent(), "SMS cannot be sent", Toast.LENGTH_LONG).show();
        }
    }
}

请帮帮我..谢谢。

【问题讨论】:

  • 这很正常。不要期望系统总是将您的 Activity 保留在后台,这取决于设备的内存状态,它可能会杀死您的 Activity。
  • 那么我能做些什么来防止这种情况发生?

标签: android android-intent back-button


【解决方案1】:

你需要一个标志,通过它你可以确定你需要调用 super.onbackpress(); 或发送短信。

我认为你正在同时做这两个动作

【讨论】:

    【解决方案2】:

    首先检查您的清单,可能是您可能使用过的 SMSActivity

    android:noHistory="true"

    无论您发布了什么代码,它都应该在按下后恢复您的活动

    【讨论】:

      猜你喜欢
      • 2020-10-12
      • 1970-01-01
      • 2019-05-14
      • 1970-01-01
      • 2021-12-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-01-10
      相关资源
      最近更新 更多