0

特定の番号からメッセージを受信するアプリケーションを作成しました。正常に動作しています。メッセージを受信した後、受信トレイ アプリケーション アイコンにアラート アイコンを表示したいです。そのためのコードをどこに追加すればよいですか。

    if ( extras != null ) {
                // get array data from SMS
                Object[] smsExtra = (Object[]) extras.get( "pdus" ); // "pdus" is the key

                for ( int i = 0; i < smsExtra.length; ++i ) {
                    // get sms message
                    SmsMessage sms = SmsMessage.createFromPdu((byte[])smsExtra[i]);
                    // get content and number
                    String body = sms.getMessageBody();
                    String address = sms.getOriginatingAddress();
                    // create display message

                    if( address.equals("+91999999999")){


                    messages += "SMS from " + address + " :\n";
                    messages += body + "\n";

               // notify new arriving message
                    Toast.makeText( context, messages, Toast.LENGTH_LONG ).show();
                    listSms.add(new SmsInfo(address, body));
                    this.abortBroadcast();
    }
4

2 に答える 2

0

アイコンは AndroidManifest ファイルにハードコーディングされています。このように設計されているため、コードを実行せずにアプリ アイコンを取得できます (アプリの起動が遅くなる可能性があります)。

一部のカスタム ホーム アプリケーションはこれをサポートしていますが、プライベート API を使用しています。

NotificationManager を使用して、ステータス バーにアイコンを追加してみてください。その方がより目立つので、より推奨される方法です。そのような場合、ステータスバーを使用してください。その目的は何ですか...

動的アイコンの取得に関しては、電話がメッセージ (プッシュ通知など) を受信し、アプリが通知を作成するときに、小さな http 要求を実行して、通知を作成する前に動的アイコン ファイルを取得できます。これにより、投稿が数秒遅れますが、実際には問題ありません。次に、結果の画像を取得して、通知で使用できます。特定の画像は、URL などの写真を識別するデータ (プッシュ通知) を送信するか、アプリの通知構築部分で既存の URL に追加できる ID を送信することで選択できます。 .

于 2013-09-16T09:01:39.120 に答える
0

アラートバッジ/アイコンを表示したい場所は確かですが、確認して実装を試みることができます: https://github.com/jgilfelt/android-viewbadger

于 2013-09-16T09:01:44.640 に答える