0

SMS メッセージを受信時に既読としてマークする Android アプリケーションを開発しています。私はこのコードを使用してそれを行います:

   if(readMessages.contains(id)){
                ContentValues values=new ContentValues();
                values.put("read", 1);
                values.put("seen", 1);
                getContentResolver().update(Uri.parse("content://sms/inbox"), 
                        values, "_id="+id, null);
                Log.i("read message","id:"+id);

                if(readThread.contains(trdid)){

                    ContentValues values1=new ContentValues();
                    values1.put("read", 1);
                    values1.put("seen", 1);
                    getContentResolver().update(Uri.parse("content://sms/inbox"), 
                            values, "_id="+trdid, null);
                    Log.i("read thread","id:"+trdid);

                }
            }

ご覧のとおり、スレッドとメッセージ ID を READ としてマークしました。メッセージは実際に既読としてマークされています。

ただし、コードを実行した後、メッセージ アプリのアイコン (新しいメッセージの数を示す赤いバブル) が消えないのはなぜですか? それは可能ですか?

ありがとうございました!:)

4

1 に答える 1

1

コードを実行した後、メッセージ アプリのアイコン (新しいメッセージの数を示す赤いバブル) が消えないのはなぜですか? それは可能ですか?

自分のものではないアプリからの通知を制御することはできません。さらに、AOSP メッセージングには赤いバブル通知がないため、これはカスタム アプリです。

それにもかかわらず、サードパーティのアプリの通知ステータスを制御することはできません. SMS データベースが変更されたときに、その UI と通知を更新するのは、SMS クライアントの責任です。

于 2013-03-16T07:54:32.960 に答える