簡體   English   中英

以兩個 Activity 作為輸入點的 Android 應用

[英]Android app with two activities as enter points

應用程序包含兩個活動作為清單中描述的輸入點。

    <activity
        android:name=".ui.screen.main.MainActivity"
        android:icon="@mipmap/ic_tracker_launcher" >
        <intent-filter android:label="@string/app_name" >
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>
    <activity
        android:name=".ui.screen.main.MapEnterActivity"
        android:icon="@mipmap/ic_watcher_launcher" >
        <intent-filter android:label="@string/app_name_watcher" >
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

因此,我們在移動桌面上有兩個圖標。

我需要解決的問題是當一個圖標啟動相應的活動並且用戶按下“后退”按鈕(應用程序沒有被殺死)按下另一個圖標並啟動另一個活動時 - 他無法通過其圖標運行另一個活動,第一個出現再次。 所以它應該在正確運行另一個活動之前被殺死。

是否可以通過其圖標運行每個活動而無需手動終止應用程序(需要讓用戶感到舒適)以及如何實現這一點?

非常感謝您的任何建議。

在每個活動上添加 android:taskAffinity

 <activity
    android:taskAffinity="com.example.MainActivity"
    android:name=".ui.screen.main.MainActivity"
    android:icon="@mipmap/ic_tracker_launcher" >
    <intent-filter android:label="@string/app_name" >
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>
<activity
    android:taskAffinity="com.example.MapEnterActivity"
    android:name=".ui.screen.main.MapEnterActivity"
    android:icon="@mipmap/ic_watcher_launcher" >
    <intent-filter android:label="@string/app_name_watcher" >
        <action android:name="android.intent.action.MAIN" />

        <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM