我已经开发了一个 Android 应用程序,运行得非常好,我的深度链接和从文件系统打开按预期工作。然而,今天下午我发现了一些奇怪的事情,我需要你的帮助。
如果我点击我网站上的链接,该应用程序可用于打开它,按预期工作。如果我在手机上进入画廊并“打开”图片,我可以选择我的应用程序来接收它,这也能正常工作。但今天我注意到 Google 相册不允许我这样做,它要求我“分享”图像,这是我的小问题所在。
如何设置我的应用程序以接收来自 Google 相册的图片? Intent 过滤器应该是什么?
最佳答案
您必须注册您的应用才能分享 Intent 。完成后,当您单击共享图标时,操作系统会在列表中列出您的应用
将以下内容添加到您要接收图像的 Activity 中
[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 方法中检查 Intent :
if (Intent.Action == Intent.ActionSend)
{
if(Intent.Extras.ContainsKey(Intent.ExtraStream)){
Uri fileUrl =(Android.Net.Uri)Intent.Extras.GetParcelable(Intent.ExtraStream));
}
}
从 Uri 您可以访问文件系统中的图像。
关于android - Xamarin Android 应用响应 'Share To' 请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48508945/