2012-07-13 56 views
0

完全不是一个真正的编码问题,也不确定哪个堆栈站点将其抛出,所以这里就是这样。带有PHP的AppMobi/Phonegap替代方案

我想知道是否有任何类似于appmobi/phonegap的框架,在某种意义上,所有内容都被沙箱化并编译为iPhone和机器人的应用程序格式。沙盒服务器能够在其上运行PHP,我一直试着搜索整天,而且我还没有提出任何关于appmobi/phonegap的文章。这可以是免费或付费框架(最好是免费/开源)。

如果没有这样的框架,那么是否有采取类似于apache本身的方式来执行和运行,就像可以加载php的web服务器一样,并且在我的项目结束时将它编译为一个最终包在移动市场使用?

回答

2

问题是,iOS通常使用Objective-C和Android使用Java,但都可以使用JavaScript,这就是为什么phonegap的作品。

所以,除非你可以编写两个网络服务器,一个用于iOS和一个Android,并且PHP可以运行在你的网络服务器下,或者更可能的是编写一个解释器,将PHP带入并转换为在你的web服务器上运行,那么它会工作。但是,如果您编写了一个移动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中,和刚才的UI在JavaScript中,可以采取对手机利用硬件的。

2

不。尝试在移动应用程序中包含Web服务器和PHP运行库会产生严重的性能影响。

PhoneGap工作原因是因为Javascript可以通过使用内置Web浏览器的渲染引擎在移动应用程序中本机执行。