深层链接到启动器/主要活动的链接,而不是深层链接

时间:2016-05-16 10:52:44

标签: android android-activity deep-linking activity-lifecycle

当应用在后台时访问深层链接时,会启动正确的PostActivity并将其堆叠在活动之上,从而调用深层链接。这是好的和正确的。

如果在点击深层链接时应用未在后台打开,则会打开启动器活动,而不是与深层链接相关的活动。奇怪的是,如果按下后退按钮关闭堆叠的启动器活动并再次点击深层链接,则会启动正确的PostActivity

  • 这种行为有解释吗?
  • 这是预期的行为吗?
  • 如何在点击深层链接而不是启动器活动时始终启动深层链接活动?

我的启动器活动是:

    <activity
        android:name=".SplashActivity"
        android:configChanges="orientation|keyboardHidden|screenSize"
        android:label="@string/app_name"
        android:screenOrientation="sensorPortrait"
        android:windowSoftInputMode="adjustPan" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

我的深层次活动是:

    <activity
        android:name=".PostActivity"
        android:label="@string/app_name"
        android:screenOrientation="sensorPortrait"
        android:windowSoftInputMode="adjustResize">
        <intent-filter>
            <action android:name="android.intent.action.VIEW" />
            <category android:name="android.intent.category.DEFAULT" />
            <category android:name="android.intent.category.BROWSABLE" />
            <data android:scheme="@string/deeplink_scheme" />
            <data android:host="article" />
            <data android:pathPattern=".*" />
        </intent-filter>
    </activity>

1 个答案:

答案 0 :(得分:0)

答案是,这不是正常的行为,除此之外必须有一些特定于该项目的明显行为导致这种情况发生。