簡體   English   中英

SMSManager和待處理的意圖

[英]SMSManager and Pending Intent

我對正在創建的SMS應用程序有疑問(學習目的)。

在發送短信時,我希望發送一條敬酒消息(或不發送)

問題是我點擊發送后,我想結束活動,但仍然有敬酒消息出現(在這種情況下),向我提供了信息。

由於我是新手,因此我不確定該如何進行。 我所做的就是等待信息通過,設置消息,然后關閉活動。

private void sendSMS() {
    PendingIntent deliveredPI = PendingIntent.getBroadcast(this, 0, new Intent(DELIVERED), PendingIntent.FLAG_NO_CREATE);
    deliverActivity = new BroadcastReceiver() {
        @Override
        public void onReceive(Context arg0, Intent arg1) {
            switch (getResultCode()) {
                case Activity.RESULT_OK:
                    Toast.makeText(getBaseContext(), "SMS delivered", 
                    Toast.LENGTH_LONG).show();
                    finishActivity();
                    break;
                case Activity.RESULT_CANCELED:
                    Toast.makeText(getBaseContext(), "SMS not delivered", 
                    Toast.LENGTH_LONG).show();
                    finishActivity();
                    break;           

            }
        }
    };

    registerReceiver(deliverActivity, new IntentFilter(DELIVERED));        

    SmsManager sms = SmsManager.getDefault();
    sms.sendTextMessage(toNo, null, toSend.getText().toString(), deliveredPI, null);

    ContentValues values = new ContentValues();
    values.put("address", toNo);
    values.put("body", toSend.getText().toString());
    this.getContentResolver().insert(Uri.parse("content://sms/sent"), values);

}

private void finishActivity() {
    unregisterReceiver(deliverActivity);
    Intent intent = new Intent();
    setResult(123, intent);
    finish();
}

我肯定這是有可能的,甚至可以將其傳遞給另一個活動。

這聽起來似乎有些古怪,但它使我能夠學習做事的新方法……因此,如果有人能指出正確的方向,那就太好了。

謝謝!

杜德(Dude)轉到此鏈接,他們提供了適當的解決方案http://mobiforge.com/developing/story/sms-messaging-android,您可能會從此鏈接獲得答案,也可以嘗試此http://developer.android.com/resources/samples /ApiDemos/src/com/example/android/apis/os/SmsMessagingDemo.html

有一種方法可以在活動關閉后顯示吐司,例如,請參見以下問題: Android:在完成應用程序/活動后顯示吐司

也看到這個

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM