Xamarin Android 应用响应'Share To'请求



我开发了一个Android应用程序,运行良好,我的深度链接和从文件系统打开按预期工作。然而,今天下午我发现了一些古怪的事情,我需要你的帮助。

如果我单击我网站上的链接,该应用程序可用于打开它,按预期工作。如果我在手机上进入图库并"打开"图片,我可以选择我的应用程序来接收它,这也可以正常工作。但是今天我注意到Google相册不允许我这样做,它要求我"共享"图像,这就是我非常小的问题所在。

如何设置我的应用以便能够接收来自 Google 相册的图像?意图过滤器应该是什么?

必须注册应用才能实现共享意图。完成后,当您单击共享图标时,操作系统将在列表中列出您的应用程序

将以下内容添加到要接收图像的活动

[IntentFilter(new[]{Intent.ActionSend},Categories = new[]{Intent.CategoryDefault},DataMimeType = "image/*",Label = "Your application name")]

例如:

[Activity(Label = "Your activity name"]
[IntentFilter(new[]{Intent.ActionSend}, Categories = new[]{Intent.CategoryDefault}, DataMimeType = "image/*",Label = "activity label")]
public class YourActivity: Activity
{

在 OnCreate 方法中,检查意图:

if (Intent.Action == Intent.ActionSend)
{
    if(Intent.Extras.ContainsKey(Intent.ExtraStream)){
            Uri fileUrl =(Android.Net.Uri)Intent.Extras.GetParcelable(Intent.ExtraStream));
        }
}

从 Uri 可以访问文件系统中的映像。

最新更新