TencentCloud / TPNS-Flutter-Plugin

MIT License
61 stars 35 forks source link

联合保活如何关闭? #19

Closed orenwang closed 3 years ago

orenwang commented 3 years ago

请问TPNS-Flutter-Plugin插件如何合规关闭联合保活?

官方给的Android的TPNS关闭联合保活的方式是直接在manifest中加入以下

<!-- 在自身应用的AndroidManifest.xml文件中添加如下结点,其中 xxx 为任意自定义名称: -->     
<!-- 关闭与 TPNS 应用的联合保活功能,请配置 -->
<provider
     android:name="com.tencent.android.tpush.XGPushProvider"
     tools:replace="android:authorities"
     android:authorities="应用包名.xxx.XGVIP_PUSH_AUTH"
     android:exported="false" />    

但此Flutter插件加入后,APP启动时依然存在com.tencent.android.tpush.service.XGVipPushService.onCreate时进行android.app.ApplicationPackageManager.queryIntentActivities的调用行为,请问如何正确关闭联合保活呢?多谢。

stevenxiaowen commented 3 years ago

您好,您提及的 manifest 配置的确是关闭联合保活相关的;而提及的 queryIntentActivities 行为是其他合规相关,请参考 首次安装启动 App 时,配置不自动启动推送服务 另外添加配置。

orenwang commented 3 years ago

您好,您提及的 manifest 配置的确是关闭联合保活相关的;而提及的 queryIntentActivities 行为是其他合规相关,请参考 首次安装启动 App 时,配置不自动启动推送服务 另外添加配置。

感谢回复,我尽快验证一下 queryIntentActivities 行为。

关于联合保活关闭,其实依然是存在疑问的,因为配置了以后并没有如 若控制台有以下日志打印,则表明联合保活功能已经关闭:I/TPush: [ServiceUtil] disable pull up other app。 所说看到该条日志。

关于配置细节:这里我是原封不动的把 "应用包名.xxx.XGVIP_PUSH_AUTH" 抄进去后把应用包名替换成真实包名,我不确定xxx应该改成什么值合适因此未作改动。

stevenxiaowen commented 3 years ago

您好,如文档注释所示,"应用包名.xxx.XGVIP_PUSH_AUTH" 中的 xxx 为任意自定义字符串。