【发布时间】:2017-06-16 17:19:20
【问题描述】:
编辑:我要重新表述这个问题,当用户单击网页中的浏览按钮时,如何使我的 Xamarin Forms 应用程序显示在可用应用程序列表中,例如images.google.com 或 Facebook(发布或评论)? 我似乎有正确的总体思路,我知道我需要一个意图去做,但我找不到产生正确结果的动作或类别组合。请帮忙。
我有一个 Xamarin Forms 应用程序,它有 3 个部分,默认启动器会在您单击应用程序图标时打开,效果很好,然后我有一个图像管理器部分从这个意图启动...
[Activity(MainLauncher = false, NoHistory = true, Icon = "@drawable/icon", Theme = "@style/LaunchTheme",
ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
[IntentFilter(
new[] { Intent.ActionView },
Categories = new[]
{
Intent.CategoryDefault,
Intent.CategoryBrowsable,
},
DataScheme = "file",
DataMimeType = "*/*",
DataPathPattern = ".*\\.jpg"
)]
图像经过编辑后,可以保存到应用程序内的库中(这实际上是由 Azure 存储支持的 SQL 数据库)。 现在我想做的是第三部分,一个包含所有托管图像的库,当您单击网页中的浏览文件按钮时,它会出现在选项中。目前我的设备显示图库和 Prime Photos 作为选项,实现这一点的意图应该是什么?
谢谢 谢恩。
编辑: 此时我知道我需要将 IntentFilter 变成 Intent.ActionGetContent,类似于...
[Activity(MainLauncher = false, NoHistory = true, Icon = "@drawable/icon", Theme = "@style/LaunchTheme",
ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
[IntentFilter(
new[] { Intent.ActionView },
Categories = new[]
{
Intent.CategoryDefault,
Intent.CategoryBrowsable,
Intet.CategoryOpenable
},
DataScheme = "file",
DataMimeType = "image/*"
)]
但是,我不确定下一步是什么,而且有关这方面的 Xamarin 文档很少,即使它们存在。任何帮助表示赞赏。
【问题讨论】:
-
试试这个:Intent intent = new Intent();意图.setAction(android.content.Intent.ACTION_VIEW); intent.setDataAndType(Uri.fromFile(file), "image/*");intent.startActivity(intent);
-
@YorkShen,很遗憾没有。你会认为这会更容易。我想做的就是将 Activity 作为画廊启动,我不知道我做错了什么。该应用程序可用作打开图像的资源,效果很好,但至于将自己呈现为图库应用程序,则遥不可及。谢谢
标签: c# xamarin xamarin.android xamarin.forms