我有一个自定义方案被解析并在应用程序中接受。大多数情况下,没有任何问题,它创建了一个主活动,一切都如预期的那样。
但是,有时候,它只是简单地重新打开存在的Activity,在这种情况下,它只是简单地从后台恢复,没有新的意图或其他任何东西。
有人有这个问题吗?对于这种没有创建新意图的情况,有什么捕获url方案参数的技巧吗?我几乎无法重现这个问题,但我的客户经常遇到这个问题。
<activity
android:name=".Main"
android:configChanges="keyboardHidden|orientation|screenSize|locale"
android:label="@string/app_name"
android:screenOrientation="portrait" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<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="xxxxx" />
</intent-filter>
</activity>
深度链接应该启动你的意图,但如果它已经启动它不会调用onCreate方法(假设你有解析的东西在那个方法),因此它不会调用解析的东西。如果没有,那么它仍然会失败,因为你正在检查意图数据,这是启动活动的意图的数据,如果活动被打开,那么它没有被你的链接调用,所以它没有数据。这就是为什么只有当你关闭应用程序并按下链接时才有效。