15

我正在开发一个使用 django 的 Web 应用程序。

我想使用电话间隙为 ios / android 创建网站的本机应用程序。

这可能吗?据我了解,本机设备无法解释 python 代码。

这是项目的早期阶段,如果证明太难,我可能会使用不同的框架,即主干.js。

有什么想法/经验吗?

4

1 回答 1

19

没错,您不能使用 PhoneGap 在 iOS 或 Android 上运行 python 代码,但没有必要这样做。是的,您可以使用 PhoneGap 构建您网站的本地移动应用程序。

我将尝试解释一下这些技术如何相互比较:

  • Django 是一个运行在 Web 服务器上的 Python Web 框架
  • PhoneGap 是一个使用 Web 技术(HTML5+CSS+Javascript)构建原生移动应用程序的框架,应用程序将在移动设备上运行

一种常见的方法是使用jQuery Mobile构建移动 UI,并使用 Django Web 应用程序提供RESTful API来获取应用程序的数据。

看看this another question了解更多细节。


编辑:回答第一条评论中的问题

是的,可以使用这些框架构建一个快速且运行良好的应用程序。当今智能手机的性能更多地取决于实现的质量,而不是 jQuery mobile 和 Django 本身。

基本上,使用 PhoneGap,可以通过三种不同的方式向用户显示内容:

  • 服务器端生成的页面
  • 在客户端使用来自服务器的 Javascript 数据生成的页面,使用例如JSON以预定义的格式传输
  • 前两者的组合

这个答案很好地阐明了服务器-客户端通信和页面呈现。

您可以使用 PhoneGap 有点像受限的 Web 浏览器,并且基本上直接从您的服务器显示内容,就像用户使用普通 Web 浏览器访问站点时一样。但我不推荐这个,虽然。这种方法有很多缺点(即当用户从您的网站打开指向另一个网站的链接时会发生什么?)

准确地说,至少在我看来,使用 Javascript 编写并在使用 PhoneGap 构建的应用程序中运行的 UI 不是原生的。比较原生应用程序和 PhoneGap 应用程序是另一回事,这里是对差异的解释

我不知道您正在构建什么样的服务,但总的来说,我建议在开始构建应用程序之前评估不同的方法。响应式移动优化网站会做还是真正需要应用程序可以提供的功能?

如果您决定使用 PhoneGap 构建应用程序,我建议您使用客户端 Javascript 并使用 JSON 格式的 XHR 请求从 Django 后端获取数据。互联网上有很多例子。

于 2013-09-04T19:48:56.473 回答