我有一个使用 MVC4 在 .NET Framework 上开发的 Web 应用程序。所以现在我需要为它创建一个 Android 应用程序。
- 我是否必须将整个 C# 代码转换为 Java(我的 MVC 应用程序中的控制器中的代码)?
- 如果我使用 Xamarin 会更好吗?
- 我可以为我的应用程序创建新的视图,因为我有控制器和模型吗?
我该如何处理?
我有一个使用 MVC4 在 .NET Framework 上开发的 Web 应用程序。所以现在我需要为它创建一个 Android 应用程序。
我该如何处理?
您将无法直接从 MVC4 应用程序中提取模型和控制器并将其填充到 Xamarin.Android 应用程序中。但是,您将能够重用其中的一些。尤其是模型。
在工作中,我将 Silverlight 应用程序移植到 WP7/Android/iOS 应用程序中,其中许多从服务器、模型等获取数据的逻辑都是直接复制/粘贴的。然而,所有视图和视图的逻辑都必须从头开始编写,因为计算机显示器和移动设备上的视图端口不同,并且一般 UI 也非常不同。
此外,使用 MVVM 模式有助于将 UI 与模型分离,从而使应用程序更具可测试性并允许更多的代码共享。为此,我使用 MvvmCross。还有一个名为 MonoCross 的 MVC 替代方案。两者都是免费的,就像啤酒和演讲一样。这两个都适用于 Xamarin.Android。
如果您只打算制作一个 Android 应用程序而不打算为其他平台制作它并且不想支付 Xamarin 产品的价格,那么您应该能够在原生 Android 中制作它。我不明白为什么这是可能的。但是,您确实需要找出您想要什么。
您的 Web 应用程序是做什么的?我的猜测是它以某种方式操纵数据库中的一些数据。因此,您需要更改您的 Web 应用程序以在某种 Web 服务(可能是 RESTful 或其他方式)中公开该数据库。您需要对 Android 应用程序进行布局,以使您拥有的 Web 应用程序的视图适合移动设备的较小视图端口。这样做的一个好处是在纸上画出你的 Android 应用程序并制作箭头和注释。您可能已经知道 Web 应用程序中代码的模型,在您的 Android 应用程序中应该是类似的。因此,开始编写视图,然后将它们连接到 Web 服务。
如果你读到这里,你可能会注意到我的回答很模糊。这是因为你的问题很模糊。
我看到越来越多来自不同公司的专业移动应用程序只是建立在同一公司的响应式 Web 应用程序(网站)之上。
我不能说他们使用的是Cordova还是其他一些技术。
架构师很简单: 1- 构建一个专业的精心设计的angularJs web应用;2-然后使用 Cordova 将其转换为移动应用程序(iOS、android 等)。
真的那么简单吗?嗯……也许不是!但理论上它应该有效。
好消息是 Visual Studio仍然支持 Cordova,即使在 Microsoft 购买了Xamarin之后。
https://www.visualstudio.com/vs/cordova/
你可以从这里开始: https ://taco.visualstudio.com/en-us/docs/get-started-first-mobile-app/
快乐的跨平台移动开发!