Making your Rails app mobile with WAP and WML
2007-06-25 13:30
489 查看
中国有超过4亿的手机用户,手机上网超过4000万。一个人每天上网平均8小时,但是手机却是24小时开机。。。同时基于web和wap的站点,更有利于推广,公司属于服务行业性质,对于特定手机用户如果需要一些有用而信息量不大的资讯,是比电脑方便的多,论流量收费也花不了多少钱,可以及时的反馈和获取一些信息,期待中国式3G时代到来。。。
下面给出实现的具体步骤:
1。设置WAP WML 文本类型。你可以在每一个controller method里这样做,也可以在application.rb文件中用before_filter来实现:
2。我们创建一个布局app/views/layouts/wap.rhtml,使用wml。
3。我们在index controller里增加一个wap方法,以便用户可以通过http://www.xxx.com/wap来访问我们wap站点。
修改Apache安装目录下conf/mime.types文件:
在该文件中增加以下内容:
text/vnd.wap.wml .wml
image/vnd.wap.wbmp .wbmp
application/vnd.wap.wmlc .wmlc
text/vnd.wap.wmls .wmls
application/vnd.wap.wmlsc .wmlsc重启动服务器即可。
下面给出实现的具体步骤:
1。设置WAP WML 文本类型。你可以在每一个controller method里这样做,也可以在application.rb文件中用before_filter来实现:
before_filter :set_wap_content_type, :only => :wap
def set_wap_content_type @headers[”Content-Type”] = “text/vnd.wap.wml; charset=iso-8859-1″ end
2。我们创建一个布局app/views/layouts/wap.rhtml,使用wml。
<?xml version=”1.0″?> <!DOCTYPE wml PUBLIC “-//WAPFORUM//DTD WML 1.1//EN” “http://www.wapforum.org/DTD/wml_1.1.xml”> <wml> <card title=”<%= @title %>”> <p align=”center”> <%= @content_for_layout %> </p> </card> </wml>
3。我们在index controller里增加一个wap方法,以便用户可以通过http://www.xxx.com/wap来访问我们wap站点。
def wap @title = “San Francisco Sailing Weather” render(:layout => “wml”) end 4。最后我们来创建app/views/index/wap.rhtml来渲染我们的wap首页。
<%= link_to ‘NOAA Marine Forecast’, { :controller => ‘/marine/forecast’, :action => ‘wap’ } %><br/> <%= link_to ‘Wind Readings’, { :controller => ‘/marine/wind’, :action => ‘wap’ } %><br/> <%= link_to ‘Current Predictions’, { :controller => ‘/marine/tide’, :action => ‘wap’ } %> 下面的链接是效果图: http://webcab.de/cgi-bin/wcl.cgi?a=UPG1%20UP%2F4.0&m=text%2Fvnd.wap.wml&URL=http://windandtides.com/wapwap网站服务器配置信息:
修改Apache安装目录下conf/mime.types文件:
在该文件中增加以下内容:
text/vnd.wap.wml .wml
image/vnd.wap.wbmp .wbmp
application/vnd.wap.wmlc .wmlc
text/vnd.wap.wmls .wmls
application/vnd.wap.wmlsc .wmlsc重启动服务器即可。
相关文章推荐
- Build Your First Mobile App With Ionic 2 & Angular 2 - Part 6
- Your app, extension, and/or linked framework appears to contain code designed explicitly with the ca
- Build Your First Mobile App With Ionic 2 & Angular 2 - Part 7
- 【转】XZip and XUnzip - Add zip and/or unzip to your app with no extra .lib or .dll
- Build Your First Mobile App With Ionic 2 & Angular 2 - Part 1
- How To Save Your App Data With NSCoding and NSFileManager
- Build Your First Mobile App With Ionic 2 & Angular 2 - Part 2
- Making Mobile Apps with App Inventor
- How To Setup a Rails 4 App With Apache and Passenger on CentOS 6
- Build Your First Mobile App With Ionic 2 & Angular 2 - Part 3
- 8.1 Details Your app does not comply with the Guidelines for Using Apple's Trademarks and Copyrights
- Building Applications with Force.com and VisualForce(六):Designing Applications for Multiple users: Accommodating Multiple Users in your App
- Build Your First Mobile App With Ionic 2 & Angular 2 - Part 4
- Build Your First Mobile App With Ionic 2 & Angular 2 - Part 5
- Profile and debug your ASP.NET MVC app with Glimpse
- Using Claims in your Web App is Easier with the new OWIN Security Components
- Using jQuery Mobile with MVC and Netduino for Home Automation
- How to get your very own RStudio Server and Shiny Server with DigitalOcean
- How to find out why your account keeps getting locked with Windows Server, TMG and Webspy
- Installing Ruby and Railswith RVM on Fedora 14