如何将Xamarin用于包装Web应用程序,就好像它是Android的本机应用程序一样?

时间:2017-03-23 04:23:37

标签: xamarin xamarin.android xamarin.forms

假设我在Play商店中构建了一个我想要的超级移动友好型Web应用程序,供Android用户下载。

我可以使用Xamarin:

  • 将整个移动应用程序包装为单个WebView
  • 注册移动推送通知

基本上使用现有的网络应用程序来缩短Android应用程序的MVP?如果是这样,是否有任何众所周知的流程或文档证明了这一点?

2 个答案:

答案 0 :(得分:1)

对您而言,最好的方法可能是将 Xamarin表单与一个或多个仅包含Web视图的页面一起使用。 我不喜欢Xamarin Forms,因为通常对我来说Xamarin Android + iOS在相似的时间内提供了更好的结果,但是你的应用程序会非常简单,使用Xamarin Android无法实现。

确保您的网络应用只显示在您的应用中显示的内容,否则您可能会看到双页眉/页脚,无用的按钮......但如果网站是您的,则添加一些参数来更改我想,用户界面不会是一个问题。

看一下这个例子:

https://github.com/xamarin/xamarin-forms-samples/tree/master/WorkingWithWebview

另一种方法是使用Razor直接在你的应用程序内部用html构建你的页面,但是如果我理解的那么这不是你需要的:

https://developer.xamarin.com/guides/cross-platform/advanced/razor_html_templates/

答案 1 :(得分:1)

虽然技术上可以像前面的回答所说的那样这样做。我建议首先审查相关商店提交的指南。例如,Apple不允许向其商店提交任何仅仅反映网站功能的应用程序。我怀疑谷歌可能会是一样的。

然而,为了回答你的问题,Xamarin.Forms适用于像你建议的那样的简单应用程序。或者如果您更喜欢构建特定的操作系统,那么在使用Xamarin的iOS中,您将使用其中添加的Safari视图控制器的xcode 8.1版本。 Android使用与windows类似的东西。

编辑:

您可以使用Xamarins Andorid原生PCL项目中的Web View控件将您的移动友好网站封装在一个应用程序中,这里是文档:

Xamarin Android Developer link to Android Web View

至于推送通知,是的,使用Xamarin.Android是完全可能的。并根据您要用作后端处理它们的内容而有所不同,I.E。 Azure的通知中心等。