oppo通知栏的那些事儿(如何分析系统级应用)

本文详细记录了分析OPPO系统通知栏的步骤,包括如何通过日志定位问题、反编译系统应用、寻找关键代码,以及在尝试通过反射调用隐藏接口时遇到的SecurityException权限问题。尽管最终未能通过代码解决,但提供了系统应用分析的一般流程。
摘要由CSDN通过智能技术生成

oppo通知栏的那些事儿(如何分析系统级应用)

前言:

oppo系统的默认禁止了第三方应用向通知栏发送通知,它的设置里面有个通知栏的开关,默认是关闭的,导致了我们发送的通知都展示不出来。只有手动打开了才可以展示。既然可以打开那么我们可是否可以直接用代码去打开这个开关从而让我们的应用可以弹出通知栏呢?既然有了目标就开干。oppo通知栏设置界面

分析:

分析这一类的问题,就是通过系统的log定位稳定,插上oppo的手机,在通知管理的界面里面,随便点击一个条目,过滤tag为ActivityManager,看系统调用的log。
通知栏启动log
可以很清晰的看到调用了哪个包,哪个Activity.这里我们直接定位到这一行log。

START u0 {act=com.coloros.notificationmanager.app.detail cmp=com.coloros.notificationmanager/.AppDetailPreferenceActivity (has extras)} from uid 1000 from pid 2086 on display 0

既然知道了是这个com.coloros.notificationmanager包就可以导出这个包对应的APK反编译查看到底调用了哪行代码了。

动手:

如果想知道这个包名对应的app叫什么,手机上安装一个包名查看器,看下这个包名对应是什么东西。包名查看器

看到了吧有个通知栏管理的系统应用,那么我们就开始动手搞吧,看它是怎么搞的。adb进入到/system/app目录下ls一下。

ls查看文件

看起来有点像它,那么就abd pull导出来看一波吧。

F:>adb pull /system/app/notification_center D:/notification_center

/system/app/notification_center/: 4 files pulled…files skipped. 6.2 MB/s (603955 bytes in 0.093s)

导出来是一个文件夹,是个这个东西。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值