Android:如何读取意图URI额外数据



我需要(如果可以的话)来处理这样的" url"(在电子邮件中,我需要打开我的应用程序(" WICS")):

http://wics/resetPassword/myemail@mydomain.ext/FOOBARTOKEN

我在我的androidmanifest.xml

中有这个
<activity android:name=".ResetPasswordActivity">
            android:label="@string/app_name">
            <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="http"
                    android:host="wics"/>
            </intent-filter>   
</activity>

我如何在我的repetpasswordactivity中获得" myemail@mydomain.ext"one_answers" foobartoken"?

我已经插入此代码:

Intent intent = getIntent();
Uri uri = (Uri)intent.getData();

但是现在呢?拆分" URI"字符串并获取3TD和4th Elements?

您可以做这样的事情。

<meta-data android:name="my_url" android:value="http://wics/resetPassword/myemail@mydomain.ext/FOOBARTOKEN" />

然后以代码获取。

ApplicationInfo appInfo = getPackageManager().getApplicationInfo(getPackageName(), PackageManager.GET_META_DATA);
Bundle bundle = appInfo.metaData;
String url = bundle.getString("my_url");
Uri uri = Uri.parse(url);

然后在"/"定界符上分开。

String[] arr =  url.split("/");

那么,您需要做的就是循环绕过ARR并找到您的单词。有意义吗?

最新更新