0

我正在开发有关 SMS 的 Android 应用程序。我需要大师的一些建议。现在我正在尝试使用此代码块读取短信:

private String readSMS(){
        Uri SmsUri=Uri.parse("content://sms/inbox");
        String[] projection=new String[]{"_id","address","body","date"};
        Cursor cursor=null;
        cursor=getContentResolver().query(SmsUri,projection,null,null,null);
        if(cursor!=null&&cursor.moveToFirst()){    
            int id=cursor.getInt(cursor.getColumnIndex("_id"));    
            String address=cursor.getString(cursor.getColumnIndex("address")); 
            String body=cursor.getString(cursor.getColumnIndex("body")); 
            return body;     
        }       
        return "";
    }

现在我想问一个问题。我可以写一个层来管理短信吗?例如,我想在用户识别之前阅读短信。如果我愿意,我将使用此短信并在我的程序中显示,否则我将什么也不做,原始手机短信应用程序将接收它并通过通知报告用户。这就是我的意思: 在此处输入图像描述

谢谢你。

4

1 回答 1

0

您可以实现一个BroadcastReceiver捕获消息并根据需要处理它们的方法。请参阅这篇文章了解如何实现它。

为了取消其他应用程序对消息的进一步处理,请abortBroadcast();根据此帖子调用。将优先级设置为相当高的值很重要,但建议您不要使用最大值。

希望这会有所帮助....干杯!

于 2013-07-27T13:40:25.753 回答