Android中的动态深层链接

时间:2016-04-02 06:58:18

标签: android deep-linking deeplink

我正在浏览文档http://developer.android.com/training/app-indexing/deep-linking.html,了解Android中的深层链接。我的Android应用中有一项名为WalletActivity的活动,我已成功通过在AndroidManifest文件中进行必要的更改来成功创建深层链接。

但是,我的WalletActivity包含一个选项列表,点击它会将我转到另一个活动WalletRechargeActivity,其内容取决于从中的选项列表中选择的相应选项WalletActivity。现在,我想要一个可以直接放在相应的WalletRechargeActivity屏幕上的深层链接。我该怎么做?

例如,如果example://wallet将我转到WalletActivity,我希望example://wallet/abcd50之类的内容可以通过$ 50充值选项将我带到相应的WalletRechargeActivity屏幕。此值abcd50可能因任何内容而异,并且不会事先修复,因此我无法将AndroidManifest文件添加到WalletRechargeActivity文件中,对吧?我需要动态处理它。所以,你能告诉我我该怎么做?

1 个答案:

答案 0 :(得分:-1)

以下是将用户路由到WalletActivity或WalletRechargeActivity的示例代码。然后,您可以使用getIntent().getData()方法解析网址内容。

<activity android:name=".WalletActivity">
    <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="example" />

        <data android:host="wallet" />
    </intent-filter>
</activity>
<activity android:name=".WalletRechargeActivity">
    <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="example" />

        <data android:host="wallet" />

        <data android:pathPattern="/..*" />
    </intent-filter>
</activity>