记一次sharedUserId引起的友盟推送无效问题
一、项目背景
应用于车载设备的广告终端App,集成于系统应用apk;有新的产品需求,初期调研时使用友盟推送sdk,在手机端以及在普通apk模式的时候,接入推送正常无误;后续直接开发对应推送业务逻辑,知道QA测试阶段,发现问题;
二、问题描述
-
作为普通apk时,AndroidManifest中配置和普通手机apk模式一样,接入友盟sdk,6.2.x,也是最新版了(2021/04/26)按照官方文档,接入正常,服务端发送推送(通知,消息,透传)都是可以的。
-
将apk改为系统rom签名的,同时配置AndroidManifest中
android:sharedUserId="android.ui.system"
之后,也就是将app和系统应用一个权限了。此时,运行apk,友盟的进程
:channel
是存活的,但是后端推送消息,无法接收到,不论是友盟官方推送,还是api调用方式,都无效;- 同时会有warn警告日志Calling a method in the system process without a qualified user,这个是ContextImpl中警报的,可查看源码,(2280行,似乎是)并没有retu