我正在使用django的Web应用程序。
我想使用手机间隙为ios / android创建网站的本机应用程序。
这可能吗?据我所知,本机设备无法解释python代码。
这是项目的早期阶段,如果证明太困难,我可能会采用不同的框架I.ebone.js。
任何想法/经历?
答案 0 :(得分:19)
没错,你不能使用PhoneGap在iOS或Android上运行python代码,但是没有必要这样做。是的,您可以使用PhoneGap构建网站的原生移动应用程序。
我将尝试解释这些技术如何相互比较:
一种常见的方法是使用ie jQuery Mobile构建移动UI,并使用Django Web应用程序提供RESTful API以获取应用程序的数据。
请查看this another question了解详情。
编辑:在第一条评论中回答问题
是的,可以使用这些框架构建一个快速且运行良好的应用程序。今天的智能手机的性能更多地取决于实现的质量,而不是jQuery mobile和Django本身。
基本上使用PhoneGap,有三种不同的方式向用户显示内容:
This answer很好地阐明了服务器 - 客户端通信和页面呈现。
您可以使用PhoneGap,有点像受限制的Web浏览器,并且基本上直接从您的服务器显示内容,就像用户使用普通Web浏览器访问网站时一样。 但我不推荐这个。这种方法有许多缺点(即当用户从您的网站打开链接到另一个网站时会发生什么?)
准确地说,至少在我看来,使用Javascript编写并在使用PhoneGap构建的应用程序内运行的UI不是原生的。比较本机应用程序和PhoneGap应用程序是另一回事,这里有一个take on explaining the differences。
我不知道您正在构建什么样的服务,但总的来说,我建议在开始构建应用程序之前评估不同的方法。响应式移动优化网站是否真的需要应用程序可以提供什么?
如果您决定使用PhoneGap构建应用程序,我建议您使用客户端Javascript进行,并使用JSON格式的XHR请求从Django后端获取数据。互联网上有很多examples。