Android监听支付宝收款信息,# 监听通知栏获取支付宝到账信息

本文介绍了如何在Android应用中创建一个`NotificationListenerService`子类`PayReceiver`,监听通知栏中的支付宝收款信息。通过解析通知内容,提取金额,并展示了相关的数据处理方法,如`parseMoney`和`checkMsgValid`。
摘要由CSDN通过智能技术生成

监听通知栏获取支付宝到账信息

[toc]

定义service

@SuppressLint("OverrideAbstract")

@RequiresApi(api = Build.VERSION_CODES.JELLY_BEAN_MR2)

public class PayReceiver extends NotificationListenerService {

private static final String TAG = "lht";

@Override

public void onCreate() {

super.onCreate();

}

@RequiresApi(api = Build.VERSION_CODES.KITKAT)

@Override

public void onNotificationPosted(StatusBarNotification sbn) {

// Toast.makeText(this,"收到消息",Toast.LENGTH_SHORT).show();

Notification notification = sbn.getNotification();

if (notification == null) {

return;

}

Bundle extras = notification.extras;

if (extras != null) {

//包名

String pkg = sbn.getPackageName();

// 获取通知标题

String title = extras.getString(Notification.EXTRA_TITLE, "");

// 获取通知内容

String content = extras.getString(Notification.EXTRA_TEXT, "");

Log.i(TAG, String.format("收到通知,包名:%s,标题:%s,内容:%s", pkg, title, content));

//处理

processOnReceive(pkg, title, content);

}

}

}

权限获取

public class MainActivity extends AppCompatActivity {

@Override

protected void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_main);

if (!isNotificationListenerEnabled(this)){

openNotificationListenSettings();

}

toggleNotificationListenerService();

// startService(new Intent(this,PayReceiver.class));

}

//检测通知监听服务是否被授权

public boolean isNotificationListenerEnabled(Context context) {

Set packageNames = NotificationManagerCompat.getEnabledListenerPackages(this);

if (packageNames.contains(context.getPackageName())) {

return true;

}

return false;

}

//打开通知监听设置页面

public void openNotificationListenSettings() {

try {

Intent intent;

if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.LOLLIPOP_MR1) {

intent = new Intent(Settings.ACTION_NOTIFICATION_LISTENER_SETTINGS);

} else {

intent = new Intent("android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS");

}

startActivity(intent);

} catch (Exception e) {

e.printStackTrace();

}

}

//把应用的Notif

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android实现一个用于监听微信通知信息的app是可行的。首先需要在AndroidManifest.xml文件中添加相应的权限,如读取通知的权限。 然后可以创建一个后台服务来监听微信的通知信息。该服务需要继承自NotificationListenerService类,并重写相应的回调方法,如onNotificationPosted()和onNotificationRemoved()方法。 在onNotificationPosted()方法中,可以获取到微信通知信息,包括通知标题、内容、发送者等。可以通过解析通知信息来判断是否为微信的通知,如果是,则可以处理相关逻辑,如将通知内容发送到其他应用或者进行特定的操作。 在onNotificationRemoved()方法中,可以监听微信通知被移除的事件。可以在该方法中进行一些处理,如取消监听或者进行数据统计等操作。 为了保证后台服务的持续运行,可以使用前台服务的方式来启动该服务,并在通知显示一个持续运行的通知,提醒用户该服务正在运行。 另外,为了保证通知监听的稳定性和兼容性,需要在代码中考虑一些特殊情况,如当微信通知的布局发生变化时,需要进行适配并更新相应的解析逻辑。 最后,在设计app界面时,可以添加一些设置选项,允许用户自定义监听的微信通知类型,或者将监听到的通知内容显示出来。 总之,通过Android通知监听机制,结合对微信通知信息的解析和处理,就可以实现一个用于监听微信通知的app。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值