如何在android中使用intent filter获取数据



我试图生成特定活动的url,因为我想通过我的应用程序共享这个特定的url,当我们点击那个url时,我的活动应该会打开。。。我尝试了很多方法,但都没有得到结果。我将意向过滤器添加到清单文件中的活动中作为

<activity
android:name="com.bodaty.samyata.samyata4.customer_service.Contacts"
android:screenOrientation="portrait"
android:windowSoftInputMode="stateHidden" >
<intent-filter>
<!--<category android:name="android.intent.category.ALTERNATIVE" />-->
<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="www.samyata.com"
/>
</intent-filter>
</activity>

在创建我的活动时,我添加了这样的

Intent intent = getIntent();
String action = intent.getAction();
Uri data = intent.getData();
Log.e("dataaa", String.valueOf(data));

我想生成url来打开特定的产品详细信息页面,但我无法生成url。。。我正在尝试打印数据,但数据总是空的,为什么有人能帮助我请

08-02 05:48:18.049 13864-13864/com.bodaty.samyata.samyata4 E/dataaa: null
08-02 05:48:40.488 13864-13864/com.bodaty.samyata.samyata4 E/dataaa: null

试试这个:

Intent intent = getIntent();
Bundle bundle = intent.getExtras();
Uri uri = (Uri)bundle.get(Intent.EXTRA_STREAM);

的详细信息https://developer.android.com/training/sharing/receive

如果您的应用程序处理接收文本内容、任何类型的单个图像或任何类型的多个图像,则您的清单将显示为:

<activity android:name=".ui.MyActivity" >
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="image/*" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="text/plain" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.SEND_MULTIPLE" />
<category android:name="android.intent.category.DEFAULT" />
<data android:mimeType="image/*" />
</intent-filter>
</activity>

请参阅,如何处理传入内容

最新更新