确实不是一个真正的编码问题,并且不确定将这个问题放在哪个堆栈站点上,所以这里就是这样。
我想知道是否有任何类似于appmobi / phonegap的框架,在某种意义上,一切都是沙箱并编译成iphone和机器人的应用程序格式。沙盒服务器具有在其上运行PHP的能力,我一直在努力搜索整天,而且我还没有提出任何关于appmobi / phonegap的大量文章。这可以是免费或付费的框架(最好是免费/开源)。
如果没有那样的框架那么有一种方法可以采取类似apache本身的行为和运行方式,就像我可以在其中加载php的web服务器,并在我的项目结束时将其编译成一个最终的包供使用在移动市场?
答案 0 :(得分:2)
没有。尝试在移动应用程序中包含Web服务器和PHP运行时会产生严重的性能影响。
PhoneGap的工作原因是因为Javascript可以使用内置的Web浏览器的渲染引擎在移动应用程序中本机执行。
答案 1 :(得分:2)
问题在于iOS通常使用Objective-C而Android使用Java,但两者都可以使用javascript,这就是phonegap的工作原理。
所以,除非你可以写两个网络服务器,一个用于iOS,一个用于Android,并且端口PHP在你的网络服务器下运行,或者更可能的是,编写一个解释器,它将接受PHP并将其转换为在你的网络服务器上运行,那就行了。
但是,如果您编写移动Web应用程序并使用PHP作为服务器上的代码,那么您可以发送javascript并在两台设备上的浏览器中运行。
最好的选择是将大多数业务逻辑放在用PHP编写的REST服务中。您可以通过以下博客在PhoneGap中执行此操作:
http://share.ez.no/blogs/thiago-campos-viana/rest-api-basic-http-auth-and-phonegap-using-jquery
这是文章的主要部分,所以你可以看到它是多么容易。
//10.0.2.2:80 is the localhost in android emulator, app needs internet access
$.get("http://10.0.2.2:80/ez_site/api/ezp/content/node/2",
function(data) {
//code goes here
});
通过执行此操作,您可以在PHP中拥有大部分业务逻辑,并且只需使用javascript中的UI,就可以利用手机上的硬件。