我想为我们的网站/网络应用程序创建一个移动版本。提供最佳、功能最全的版本的好方法是什么。
创建它的部分原因是而不是 iPhone 应用程序,所以我想提供一个充分利用 iPhone 版本的 WebKit 的 iPhone 网络应用程序(所以 CSS 动画,能够依赖良好的 javascript支持等)。不过,我也希望该网站能够在其他智能手机以及更基本的手机上正常运行。
我是否创建两个站点(移动 WebKit 和基本移动网络)并根据用户代理进行重定向?我可以创建一个退化良好的站点吗?有哪些可能性,其他人如何处理?
另外:移动网络模拟器值得吗?我有一部 iPhone,所以可以很容易地在上面进行测试。如果我想在 Blackberry/Palm Pre 上进行测试,我真的需要一台设备还是有可靠的模拟器?
最佳答案
这些是一些 iPhone 特定的库,它们在 webkit 上提供了原生的外观和感觉:
让它在大多数手机上运行肯定是大多数库的问题,因为它们是围绕 iPhone 的屏幕尺寸 (320x480) 构建的。
要获得更广泛的设备覆盖范围,包括 Android 和 J2ME 手机,请查看 Yahoo Blueprint .它是一种可针对各种平台和设备进行翻译的标记语言。
您可以通过在吐出页面时动态切换服务器上的样式表来获取基于用户代理的移动 View 。尽管对于繁重的页面,这不是推荐的方法,因为您仍然会发送无法呈现的大量数据。或者,如果您对 View 有明确的区分,则可以根据用户代理和/或其他参数对 View 进行模板化。这样做的好处是只需更改 View 即可将 Controller 逻辑保存在一个地方。您可以将上述库用于 iPhone/iPod Touch,并为其他智能手机切换到更简单的移动版本,或者根据需要进行调整。
创建一个单独的移动版本的网站在发生变化时可能会非常难以维护。
iPhone 和 Android 模拟器非常接近真实交易。出于显而易见的原因,iPhone 不允许您在模拟器上进行诸如调用电话之类的操作,但 Android 基本上为设备上的所有内容提供了模拟实现。
关于iphone - 创建网站的移动版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1998916/
出于纯粹的兴趣,我很好奇如何按顺序创建PI,而不是在过程结果之后生成数字,而是让数字在过程本身生成时显示。如果是这种情况,那么数字可以自行产生,我可以对以前看到的数字实现垃圾收集,从而创建一个无限系列。结果只是在Pi系列之后每秒生成一个数字。这是我通过互联网筛选的结果:这是流行的计算机友好算法,类机器算法:defarccot(x,unity)xpow=unity/xn=1sign=1sum=0loopdoterm=xpow/nbreakifterm==0sum+=sign*(xpow/n)xpow/=x*xn+=2sign=-signendsumenddefcalc_pi(digits
关闭。这个问题是opinion-based.它目前不接受答案。想要改进这个问题?更新问题,以便editingthispost可以用事实和引用来回答它.关闭4年前。Improvethisquestion我想在固定时间创建一系列低音和高音调的哔哔声。例如:在150毫秒时发出高音调的蜂鸣声在151毫秒时发出低音调的蜂鸣声200毫秒时发出低音调的蜂鸣声250毫秒的高音调蜂鸣声有没有办法在Ruby或Python中做到这一点?我真的不在乎输出编码是什么(.wav、.mp3、.ogg等等),但我确实想创建一个输出文件。
我的代码目前看起来像这样numbers=[1,2,3,4,5]defpop_threepop=[]3.times{pop有没有办法在一行中完成pop_three方法中的内容?我基本上想做类似numbers.slice(0,3)的事情,但要删除切片中的数组项。嗯...嗯,我想我刚刚意识到我可以试试slice! 最佳答案 是numbers.pop(3)或者numbers.shift(3)如果你想要另一边。 关于ruby-多次弹出/移动ruby数组,我们在StackOverflow上找到一
使用带有Rails插件的vim,您可以创建一个迁移文件,然后一次性打开该文件吗?textmate也可以这样吗? 最佳答案 你可以使用rails.vim然后做类似的事情::Rgeneratemigratonadd_foo_to_bar插件将打开迁移生成的文件,这正是您想要的。我不能代表textmate。 关于ruby-使用VimRails,您可以创建一个新的迁移文件并一次性打开它吗?,我们在StackOverflow上找到一个类似的问题: https://sta
我对最新版本的Rails有疑问。我创建了一个新应用程序(railsnewMyProject),但我没有脚本/生成,只有脚本/rails,当我输入ruby./script/railsgeneratepluginmy_plugin"Couldnotfindgeneratorplugin.".你知道如何生成插件模板吗?没有这个命令可以创建插件吗?PS:我正在使用Rails3.2.1和ruby1.8.7[universal-darwin11.0] 最佳答案 随着Rails3.2.0的发布,插件生成器已经被移除。查看变更日志here.现在
如何使用RSpec::Core::RakeTask初始化RSpecRake任务?require'rspec/core/rake_task'RSpec::Core::RakeTask.newdo|t|#whatdoIputinhere?endInitialize函数记录在http://rubydoc.info/github/rspec/rspec-core/RSpec/Core/RakeTask#initialize-instance_method没有很好的记录;它只是说:-(RakeTask)initialize(*args,&task_block)AnewinstanceofRake
我在我的Rails项目中使用Pow和powifygem。现在我尝试升级我的ruby版本(从1.9.3到2.0.0,我使用RVM)当我切换ruby版本、安装所有gem依赖项时,我通过运行railss并访问localhost:3000确保该应用程序正常运行以前,我通过使用pow访问http://my_app.dev来浏览我的应用程序。升级后,由于错误Bundler::RubyVersionMismatch:YourRubyversionis1.9.3,butyourGemfilespecified2.0.0,此url不起作用我尝试过的:重新创建pow应用程序重启pow服务器更新战俘
关闭。这个问题需要detailsorclarity.它目前不接受答案。想改进这个问题吗?通过editingthispost添加细节并澄清问题.关闭8年前。Improvethisquestion为什么SecureRandom.uuid创建一个唯一的字符串?SecureRandom.uuid#=>"35cb4e30-54e1-49f9-b5ce-4134799eb2c0"SecureRandom.uuid方法创建的字符串从不重复?
我正在尝试修改当前依赖于定义为activeresource的gem:s.add_dependency"activeresource","~>3.0"为了让gem与Rails4一起工作,我需要扩展依赖关系以与activeresource的版本3或4一起工作。我不想简单地添加以下内容,因为它可能会在以后引起问题:s.add_dependency"activeresource",">=3.0"有没有办法指定可接受版本的列表?~>3.0还是~>4.0? 最佳答案 根据thedocumentation,如果你想要3到4之间的所有版本,你可以这
我正在阅读SandiMetz的POODR,并且遇到了一个我不太了解的编码原则。这是代码:classBicycleattr_reader:size,:chain,:tire_sizedefinitialize(args={})@size=args[:size]||1@chain=args[:chain]||2@tire_size=args[:tire_size]||3post_initialize(args)endendclassMountainBike此代码将为其各自的属性输出1,2,3,4,5。我不明白的是查找方法。当一辆山地自行车被实例化时,因为它没有自己的initialize方法