想开发移动应用,PhoneGap 还是 Titanium ? - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
请不要在回答技术问题时复制粘贴 AI 生成的内容
roody
V2EX    程序员

想开发移动应用,PhoneGap 还是 Titanium ?

  •  
  •   roody 2013-02-19 20:0:20 +08:00 7320 次点击
    这是一个创建于 4669 天前的主题,其中的信息可能已经有所发展或是发生改变。
    当然网上有一大堆对比的文章,结果无非就是各有优缺点等等。
    我想问问诸位的意见和心得。
    第 1 条附言    2013-02-21 15:16:56 +08:00
    很多人推荐开发native app,但是学习曲线较大,并且希望能在多个平台上使用,所以只能作罢。
    24 条回复    1970-01-01 08:00:00 +08:00
    kstsca
        1
    kstsca  
       2013-02-19 20:21:34 +08:00 via Android
    骚年 还是原生吧,别想跨平台,现在还不成熟
    fl3x
        2
    fl3x  
       2013-02-19 20:22:47 +08:00
    +1,Titanium的社区都不怎么活跃了,出问题只能哭了
    PrideChung
        3
    PrideChung  
       2013-02-19 20:26:00 +08:00
    +1 for native
    BenX
        4
    BenX  
       2013-02-19 20:26:31 +08:00
    如果交互要求不高,没有密集的运算,不牵扯硬件运用。还是可以用这类跨平台的方案。不过native的早晚要面对
    Frannk
        5
    Frannk  
       2013-02-20 08:45:52 +08:00   1
    我也遇到了困难
    首先你应该确定产品的形态 Web技术栈是否能够达到你的要求
    PG中的典型案例没有一个逾越了普通web的样子。
    如果你想作出重视推送,实时,流畅UI的产品尽量使用原生的,绕圈子会很痛苦。
    Frannk
        6
    Frannk  
       2013-02-20 08:49:46 +08:00   1
    @Frannk 擦 上面是吐槽 我不会写原生 所以圈子还是要绕
    我最后选择了PG 优点是

    1. HTML5 stack
    2. 有很多插件
    3. 只提供本地浏览器,里面的UI和js留给用户自由度大
    guotie
        7
    guotie  
       2013-02-20 09:06:34 +08:00
    hybird不是挺流行的吗
    lyric
        8
    lyric  
       2013-02-20 10:24:01 +08:00
    咳咳...Hybird在移动平台性能太差了。
    RelativeLayout
        9
    RelativeLayout  
       2013-02-20 11:14:51 +08:00
    原生吧
    66450146
        10
    66450146  
       2013-02-20 11:18:25 +08:00
    Native +1
    jeeson
        11
    jeeson  
       2013-02-20 11:18:39 +08:00
    Titanium 实际上是把不同平台的 API 重新封装一遍 (http://docs.appcelerator.com/titanium/latest/#!/api),用 Javascript 作为编程语言。具有跨平台的潜力,但实际开发时还是得为不同平台调整匹配。

    Titanium 已经非常 Native,UI 都是对应平台的,封装的 API 都有源码(对应平台语言),必要时可以自己修改;少数 API 不支持的功能,或者用 Javascript 性能不够理想时(比如图像处理),可以用其它语言实现扩展模块来达到 (http://docs.appcelerator.com/titanium/latest/#!/guide/Titanium_Module_Concepts)。有些语言的限制也可以通过扩展模块达到,例如,Titanium 不支持多线程,可以用模块实现 worker。也就是说,Titanium 受 API 和 语言的限制比较小,基本可以设法绕过。

    Titanium 在模拟器下调试比较方便,不支持在实际机器上断点调试(后来可能支持了)

    Titanium 一直在发展中,差不多每 3 个月有个大的版本更新(http://developer.appcelerator.com/blog/

    Titanium 目前支持 iOS, Android, BlackBerry, 预计 2013 下半年支持 Windows Phone

    我当时选择用 Titanium 主要是因为不想重新有折腾一种新的编程语言,对 Javascript 也还比较熟悉,实际使用下来也遇到不少问题,基本都能 Google 到解决方案


    真正同时了解 Titanium 和 PhoneGap 的开发者恐怕并不多,你所听到的往往都是片面的,我也仅仅是对 Titanium 熟悉一点。
    caiwb1990
        12
    caiwb1990  
       2013-02-20 13:40:13 +08:00
    Native +1
    ywencn
        13
    ywencn  
       2013-02-20 13:56:51 +08:00
    国产的 appcan 如何
    jjx
        14
    jjx  
       2013-02-20 15:35:37 +08:00
    数据库应用选择 phonegap或titanium 没有什么问题, 从技术结构来说,titanium性能更好 ,但titanium是商业产品,选择时要考虑这点
    ljbha007
        15
    ljbha007  
       2013-02-20 20:36:47 +08:00
    phonegap没啥问题
    如果要用到后台服务的话 最好是phonegap+native混合开发
    alexrezit
        16
    alexrezit  
       2013-02-20 20:47:13 +08:00
    要么纯 Web App 要么 native.
    duhastmich
        17
    duhastmich  
       2013-02-20 21:49:39 +08:00
    roody
        18
    roody  
    OP
       2013-02-21 11:39:31 +08:00
    @kstsca 性能没太多需求,简单的工具类软件。
    roody
        19
    roody  
    OP
       2013-02-21 11:39:53 +08:00
    @fl3x 目前看phonegap能更活跃一点
    roody
        20
    roody  
    OP
       2013-02-21 11:41:10 +08:00
    @Frannk 同样,一个简单的工具类软件,需要借用第三方的库,对性能没太多要求。
    Frannk
        21
    Frannk  
       2013-02-21 12:01:19 +08:00
    @jjx
    @roody
    @ljbha007
    请问PG如何实现iOS/Andriod的推送 大家有没有什么方案?
    roody
        22
    roody  
    OP
       2013-02-21 15:14:22 +08:00
    @Frannk 刚刚开始接触移动开发,这个不太清楚。
    ljbha007
        23
    ljbha007  
       2013-02-22 21:52:40 +08:00
    @Frannk 有个XMPP协议的插件 上次同学毕业设计就是用的那个 待我找找

    https://github.com/alexstrat/PhoneGap-XMPPplugin-Android

    这种插件的悲剧的地方就在于 你得每个平台都写个对应插件
    lbj96347
        24
    lbj96347  
       2013-03-17 19:33:13 +08:00
    如果硬是要走混合开发的路的话,推荐的是PhoneGap。对于Titanium的话,因为很多界面的东西不好处理,而且Plugin少。相对来说PhoneGap的自由度更高,而且有标准的插件嵌入模式。

    我觉得在考虑使用Hybrid技术的时候,你必须清楚你的应用需求是否能够满足。如果大部分事情都需要用Native的方式实现,建议放弃。不然会很累。

    对于Hybrid应用,目前多用于展示性,以及简单社交应用。交互偏复杂的,不建议使用。对于Hybrid开发已经有一年多经验了,也折腾过Native开发。以上建议纯属个人见解。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1616 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 27ms UTC 16:21 PVG 00:21 LAX 08:21 JFK 11:21
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86