想开发一个air程序碰到了一些困难,求解答 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
panlilu
V2EX    问与答

想开发一个air程序碰到了一些困难,求解答

  •  
  •   panlilu 2012 年 1 月 21 日 5347 次点击
    这是一个创建于 5119 天前的主题,其中的信息可能已经有所发展或是发生改变。
    idea很简单,做一个全屏弹幕滚动微博客户端。类似AB站弹幕的效果。
    大概功能有这么几个:
    1.微博登录,显示你follow的timeline(也可以显示publictimeline
    2.设置过滤关键字,滚动显示特定关键字的微博,比如“#春晚#”。
    3.透明置顶,可拖动位置拉伸大小

    大概大家都知道这玩意儿干啥用的了。就是无聊的时候可以看到一条条新发的微博滚动过去,以及一些事件(比如春晚直播的时候)看到大家对这个事儿的吐槽。。

    目前的进度是成功的导入了新浪微博的SDK包使用API登录以及非常简单的trace滚动输出。

    虽然看上去很简单,但是由于缺乏air程序开发的经验,所以碰到了不少困难。
    1.关于air的开发环境,因为很久以前有一些flash开发的经验,所以就直接拿flash来做了。发现现在都用AS3.0了,从as1.0用到as2.0的表示非常的不习惯。然后发现这东西为什么要用flash来开发。。除了可以可视化的弄出些UI来就没有优势了,而且编辑器使用很不习惯。。目前用sublineText2敲as然后flash来调试,然后正在下载aptana中。。flex没有用过。
    2.关于新浪微博的API数限制。由于要滚动显示,所以要有一种实时显示的效果(吐槽点都过去一分钟了才出来吐槽不给力啊),自然api调用率要比较高,每小时150次总上限的话,最多大概是30s一次,效果不佳,自己测试5秒一次效果较好,但是立马就到上限了。。
    3.关于弹幕碰撞的算法,虽然网上有些文章,但是。。好像都不是很好实践的样子。。
    4.可以窗口拉伸这个,发现透明窗口一拉伸内部的内容就形变了,不知有什么解决方案。

    向各位请教的就是上面几个困难该如何解决。
    自己也有一些思路,第二个问题我想是不是可以通过申请多个应用,然后轮流查询这样?(不过这样就会弹出很多次认证的窗口了。。或者用basic认证?)或者通过分析wap网页抓取信息(貌似工作量有些大啊。。)
    现在最简单的版本是我把一个动态文本放到一个从左到右动mc里,然后通过复制mc并赋值的方法。当然是个很笨的办法,这样就不能控制滚动的速度之类的一些属性了。
    16 条回复    1970-01-01 08:00:00 +08:00
    zythum
        1
    zythum  
       2012 年 1 月 21 日
    朱一也对as不熟悉,但是没关系的。可以用html based。同样可以搞定

    http://help.adobe.com/zh_CN/air/reference/html/
    tiantian20007
        2
    tiantian20007  
       2012 年 1 月 21 日
    盼盼果断flex吧,adobe对flex的产品定位才是给富媒体应用开发者用的。
    话说xml+as写起来跟html+js完全是一个感觉。
    zythum
        3
    zythum  
       2012 年 1 月 21 日
    @tiantian20007 感觉熊猫君的需求不需要用到flex.
    WarWithinMe
        4
    WarWithinMe  
       2012 年 1 月 21 日
    还在纠结Flash的童靴。。。放弃吧。。。不值得在这上面耗费时间。。。
    zythum
        5
    zythum  
       2012 年 1 月 21 日
    @WarWithinMe 您这句话,as开发者要哭了.
    bluef
        6
    bluef  
       2012 年 1 月 22 日
    1. 用sublime编辑代码, 然后用命令行版本的编译器mxmlc来编译. mxmlc包含在flex sdk里.
    4. 设置一下强制不缩放

    [code]
    stage.quality = StageQuality.HIGH;
    stage.scaleMode = StageScaleMode.NO_SCALE;
    stage.align = StageAlign.TOP_LEFT;
    [/code]
    Hyperion
        7
    Hyperion  
       2012 年 1 月 22 日
    抓取网页比较靠谱. 入口 -> http://weibo.cn/dpool/ttt/index.php

    写了个脚本抓了10分钟, 没啥问题.
    WarWithinMe
        8
    WarWithinMe  
       2012 年 1 月 22 日
    @zythum 其实我也是从某处看见别人这么说。。。不过真心觉得Flash要退休了。。。不过我觉得Flash做出来的东西体验不好。。Flex的就更加不好。。。AIR没看见好的。。。
    zythum
        9
    zythum  
       2012 年 1 月 22 日
    其实flash现在还是主流,毕竟现在还是ie的年代。html5 api还不够纯熟。
    air不一定要用as做,可以做html based。 mac用air风扇问题试因为用了flash.用html based基本没问题,记得上次doubanfm我测试放了一天没有什么动静。
    Hyperion
        10
    Hyperion  
       2012 年 1 月 22 日 via Android
    @WarWithinMe lol的登录部分就是air写的。
    WarWithinMe
        11
    WarWithinMe  
       2012 年 1 月 22 日
    @zythum 怎么说呢,首先在网页上用flash的话,总觉得很不舒服,因为那一块不是网页的,结果就是像右键手势之类的很别扭。。好久没用Flash不知道它的HTML based的具体是什么,不过既然用这个,倒不如去试试其他一些能用JS、HTML开发本地应用的一些framework,例如cappuccino(http://cappuccino.org/),貌似还有cross-platform的,不过现在硬是搜不出来。。缺点是还是需要些其他一些低级点的语言。。

    @Hyperion 真心没看见过体验好的air程序。。印象中Adobe自己的Help程序都那么烂,所以觉得air很难有好的效果。。
    zythum
        12
    zythum  
       2012 年 1 月 22 日
    @WarWithinMe HTML based是指的air。 可以用html开发air。
    朱一没感觉自己做的foubanfm 效果差。
    panlilu
        13
    panlilu  
    OP
       2012 年 1 月 22 日
    html based的开发感觉非常好,感谢 @zythum 的帮助!
    看了这个我觉得air还是蛮有前途的哈哈

    不过看样子春晚前是不能弄出个不错的版本了= =等后年吧- -。
    WarWithinMe
        14
    WarWithinMe  
       2012 年 1 月 22 日
    @zythum 没用豆瓣FM(也就没用过大萌神的这个),所以没有发言权。。做出好东西来还是能的。。但比较大一点的程序估计很能把效果弄好。。
    zythum
        15
    zythum  
       2012 年 1 月 22 日
    @WarWithinMe 新年不吐槽这个了.仅从开发成本就可以说明问题。
    WarWithinMe
        16
    WarWithinMe  
       2012 年 1 月 23 日
    @zythum lol。。。我错了。。。昨晚下了Crunch!下来用了一下,发觉HTML based的效果真的可以。。。Forgive me。
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     1152 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 30ms UTC 23:28 PVG 07:28 LAX 15:28 JFK 18:28
    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