10

電話とテレビの両方で実行するアプリがあります。マニフェストでは、電話の起動アクティビティを指定しています

<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 の間でフィルタリングする代わりに、どちらのデバイスでも、マニフェストで最初に宣言されたアクティビティにのみ適用されます。私が間違っていることはありますか?

4

2 に答える 2

4

私にとっての解決策は、次のような2つの起動構成を作成することでした:

新しい構成

設定方法

于 2015-04-16T11:30:45.657 に答える
0

MainActivityテレビと電話アプリの両方を呼び出すために同じアクティビティ名を使用しています。これらの名前のいずれかを変更すると、問題なく使用できるはずです。最初のステップで示しように、TV のアクティビティ名は、電話アプリのアクティビティ名とは異なるものにする必要があります。

于 2015-03-31T22:14:29.007 に答える