本文介绍了是钛Appcelerator的值得开发的iPad,iPhone和Android摄像头的应用程序?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想建立一个移动/平板电脑的应用程序,其核心功能将被拍照的摄像头,查看图片和接收通知。此外,我想针对iPhone,iPad和Android平台。

I want to build a mobile/tablet application whose core feature will be taking pictures with the camera , viewing pictures and receiving notifications. Also I want to target iphone, ipad and android platforms.

Appcelerator的钛激起由于其跨平台的吸引力我的兴趣。不过,我很担心,因为我读过的SO和其他网站的评论褒贬不一。这令我担心的事情是:

Titanium appcelerator piqued my interest because of its cross platform appeal. However I am concerned because I've read mixed reviews on SO and other sites. The things that worry me are:

  • 欠佳支持Android
  • 在摄像头的支持并不完全有能力(例如,iOS 4.1的HDR功能)
  • 相机支持车

噩梦般的情形对我来说将是投入时间钛才发现以后,它的一个重要的PITA拖放走本土

The nightmare scenario for me would be to invest time in titanium only to discover later on that its a major PITA and drop it and go "native"

请分享你的想法和经验。

Please share your thoughts and experiences.

推荐答案

我选择了钛一个严重的应用程序,但一个不使用相机。我认为有各种各样的东西,可以发挥到你的决定......

I chose Titanium for a serious application, although one that does not use the camera. I think there are a variety of things that could play into your decision...

如果您的应用程序,打算做神奇的东西用相机或一些真正的繁重的图像处理等等,你可能最好去当地。如果在另一方面,你只是想拥有它拍照,然后这些将被原样使用,或发送到服务器,或什么不是,那么钛应该只是罚款。钛也有一些处理和图像处理的事情,但正如其他人所说,如果你真的想利用设备的硬件优势,你可能想要去全面的本地。

If your app intends to do "fancy" stuff with the camera, or some real heavy image processing and so on, you're likely better off going native. If on the other hand, you just want to have it take pictures, and then those will be used as-is, or sent to a server, or what not, then Titanium should work just fine. Titanium does have some processing and image manipulation things, but as others have said, if you really want to take advantage of the device's hardware, you probably want to go full native.

还应该注意,和Appcelerator的说,这是好,这与钛的应用程序,你会不会只写一个应用程序,它的工作原理,是在所有设备上。您需要泰勒的UI到每个设备(或设备类,如iPhone,Android的),因为它们有不同的用户界面的,而不同的标准的UI流程等。

It should also be noted, and Appcelerator says this as well, that with a Titanium app, you won't just write a single app that works as-is on all devices. You will need to taylor the UI to each device (or class of device, i.e. iPhone, Android), because they have different UI's, and different standard UI flows and so on.

但是,潜在的优势,二一个是,如果你不知道,Objective-C和/或Java,你知道的JavaScript(在我的情况,我在实际使用CoffeeScript的:)。或者,如果你喜欢你的工作更写作JS比ObjC / Java的。这是对我的主要原因之一。我做了一些ObjC开发在过去,甚至不介意,但这个项目我做的是一个非常非常紧迫的时间表,它只是将是更有效的,我用钛。我能够获得成立,并建立一个应用程序非常快,我不花钱不得不更加深入地了解我使用,内存管理位的编程语言(任何时候都不能完全忽略这与钛,但本质上,他们正在做你)。基于我已经说过了,多少时间,他们与内存管理,Interface Builder的问题花(这主要是缓解忘记设置连接或挂接各种东西的人,IB实际上是pretty的伟大的工具),等等,我很高兴我使用的是钛。

But, one of the potential advantages to Titanium is if you don't know Objective-C and/or Java, and you do know JavaScript (and in my case, I'm actually using Coffeescript :). Or, if you would enjoy your work much more writing JS than ObjC/Java. This was one of the main reasons for me. I have done some ObjC dev in the past, and don't even mind it, but this project I'm doing is on a very very aggressive schedule, and it was just going to be far more effective for me to use Titanium. I was able to get set up and build an app extremely quickly, and I am not spending any time having to become more deeply familiar with the programming language I'm using, memory management bits (you can't fully ignore this with Titanium, but essentially they're doing it for you). Based on the folks I've talked to, and how much time they spend with memory management, Interface Builder issues (this is mostly the ease of forgetting to setup connections or hook various things up, IB is actually a pretty great tool), and so on, I'm quite glad I'm using Titanium.

虽然我希望做一个Android版本在某些时候,它不是一个优先事项。不过,我很高兴地知道,我的应用程序code一大块将是可重复使用,测试等,并说我会风大多只是建设/改造的用户界面为Android,而不是改写联网code,数据管理,等等。 Android的支持会更好(据说)钛1.5,但你可能要等待该版本以评估Android的,如果这是一个优先事项。

While I expect to do an Android version at some point, it's not a priority. But, I'm glad to know that a large chunk of my app code will be re-usable, tested, etc. and that I'll wind up mostly just building/revamping the UI for Android, not rewriting networking code, data management, and so on. Android support will be much better (supposedly) in Titanium 1.5, but you may want to wait for that release to evaluate Android if that's a priority.

最后,钛确实有一个模块制度,即允许您将本机code,将其暴露在钛的JavaScript接口。我们要充分利用这个集成第三方库,并至少在我们所需要的,它看起来非常容易使用,并且给了我一点信心,如果某些特定的原生功能,我们需要获得上来,那我们就会有整合,虽然仍然使用钛像样的机会,但我认为这将取决于什么特殊的原生功能了。

Finally, Titanium does have a "module" system, that allows you to wrap native code, exposing it as a JavaScript interface in Titanium. We are about to leverage this to integrate a third party library, and at least for what we need, it looks very easy to use, and has given me a little more confidence that if some particular native feature we need access to comes up, that we'd have a decent chance of integrating that while still using Titanium, but I think it would depend on what the particular native functionality was.

祝你好运,享受建设一个移动应用程序,这是pretty的乐趣!

Good luck and enjoy building a mobile app, it's pretty fun!

这篇关于是钛Appcelerator的值得开发的iPad,iPhone和Android摄像头的应用程序?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-22 00:09