Firebase Test Lab上传Leanback开发的TV应用APK提示无主启动Activity如何解决
问题原因
Firebase Test Lab默认只会识别配置了android.intent.category.LAUNCHER category的主Activity,而电视应用使用的LEANBACK_LAUNCHER不会被默认判定为主启动器入口,所以会触发该报错,你的清单配置本身是符合电视应用上架要求的,没有错误。
解决方案
你可以根据自己的测试场景选择以下任意一种方法:
- 控制台手动指定入口:在Firebase Test Lab上传APK后,展开「高级设置」选项,找到「启动Activity」输入栏,直接填写你的Activity完整类名(格式为
你的应用包名.SplashActivity)即可正常启动测试。 - gcloud命令行指定参数:如果你通过gcloud CLI运行测试,在执行命令中添加参数
--activity <你的完整SplashActivity类名>即可。 - 临时补充LAUNCHER分类(可选):如果需要减少每次测试的配置步骤,可以给
SplashActivity的intent-filter额外添加普通启动器分类,测试完成后移除即可,也可以通过构建变种配置,仅在测试构建版本中添加该配置,正式上架版本保留原有配置即可,示例配置如下:
<activity android:name=".SplashActivity" android:label="@string/app_name" android:exported="true"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LEANBACK_LAUNCHER" /> <!-- 仅测试版本添加下面这行 --> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity>
内容的提问来源于stack exchange,提问作者L.Grillo
相关产品推荐
相关产品推荐

