Android TV无法启动正确的活动
我有一个可以在手机和电视上运行的应用程序。 在清单中,我正在指定手机的发布活动
<activity
android:name=".view.phone.MainActivity"
android:launchMode="singleTop"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
和电视的发起活动
<activity
android:name=".view.leanback.MainActivity"
android:launchMode="singleTop"
android:label="@string/app_name"
android:screenOrientation="landscape" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LEANBACK_LAUNCHER" />
</intent-filter>
</activity>
它不是在LAUNCHER和LEANBACK_LAUNCHER之间进行过滤,而是在任何设备上进行过滤,而不是在清单中首先声明的任何活动。 任何想法我做错了什么?
我的解决方案是创建2个启动配置,如下所示:
您正在使用相同的活动名称MainActivity
来调用您的电视和电话应用程序。 改变其中一个名字,你应该很好。 如第一步所示,电视的活动名称应该与电话应用的活动名称不同。