导航菜单

页面标题

页面副标题

Delta Chat v1.58.3 - RemoteReplyReceiver.java 源代码

正在查看: Delta Chat v1.58.3 应用的 RemoteReplyReceiver.java JAVA 源代码文件

本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。


package org.thoughtcrime.securesms.notifications;

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import androidx.core.app.RemoteInput;
import com.b44t.messenger.DcContext;
import com.b44t.messenger.DcMsg;
import org.thoughtcrime.securesms.connect.DcHelper;
import org.thoughtcrime.securesms.util.Util;

public class RemoteReplyReceiver extends BroadcastReceiver {
    public static final String ACCOUNT_ID_EXTRA = "account_id";
    public static final String CHAT_ID_EXTRA = "chat_id";
    public static final String EXTRA_REMOTE_REPLY = "extra_remote_reply";
    public static final String MSG_ID_EXTRA = "msg_id";
    public static final String REPLY_ACTION = "org.thoughtcrime.securesms.notifications.WEAR_REPLY";
    public static final String TAG = "RemoteReplyReceiver";

    @Override
    public void onReceive(final Context context, Intent intent) {
        final CharSequence charSequence;
        if (REPLY_ACTION.equals(intent.getAction())) {
            Bundle resultsFromIntent = RemoteInput.getResultsFromIntent(intent);
            final int intExtra = intent.getIntExtra("account_id", 0);
            final int intExtra2 = intent.getIntExtra("chat_id", 0);
            final int intExtra3 = intent.getIntExtra("msg_id", 0);
            if (resultsFromIntent == null || intExtra2 == 0 || intExtra == 0 || (charSequence = resultsFromIntent.getCharSequence(EXTRA_REMOTE_REPLY)) == null) {
                return;
            }
            Util.runOnAnyBackgroundThread(new Runnable() {
                @Override
                public final void run() {
                    RemoteReplyReceiver.lambda$onReceive$0(context, intExtra, intExtra2, intExtra3, charSequence);
                }
            });
        }
    }

    static void lambda$onReceive$0(Context context, int i, int i2, int i3, CharSequence charSequence) {
        DcContext account = DcHelper.getAccounts(context).getAccount(i);
        account.marknoticedChat(i2);
        account.markseenMsgs(new int[]{i3});
        if (account.getChat(i2).isContactRequest()) {
            account.acceptChat(i2);
        }
        DcMsg dcMsg = new DcMsg(account, 10);
        dcMsg.setText(charSequence.toString());
        account.sendMsg(i2, dcMsg);
        DcHelper.getNotificationCenter(context).removeNotifications(i, i2);
    }
}