1. 背景
用户提示抖音启动的过程中,className获取的值和当前应用顶层启动的值不一致
2.抖音相关信息解密
2.1 启动之后顶层Activity
抖音里面启动的Activity为Splash Activity ,但是AR 里面的ComponentName 为MainActivity。
3. 技术细节
3.1 AR 中ComponentName的来源
3.2 start U0启动的是哪个Activity
start U0里面启动的是Intent里面ComponentName值
4. 本地验证
在代码里面添加日志打印
4.1 抖音
结果发现,抖音应用里面Intent里面的cmp和最后映射在AR里面的cmp的值不一样。
4.1 Demo
自己写的demo中,Intent的cmp和最后AR里面的cmp值是一样的。
5. 结论
- 抖音的AR里面的cmp和Intent里面启动的cmp不一样是因为抖音在xml里面配置了android:targetActivity="com.ss.android.ugc.aweme.main.MainActivity"导致的
- start U0里面填充的是Intent里面带的cmp
- ACTIVITY_FOREGROUND_STATE_CHANGED这个埋点里面获取的是AR里面的cmp值