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

2012-01-21 21:55:02 +08:00
 panlilu
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并赋值的方法。当然是个很笨的办法,这样就不能控制滚动的速度之类的一些属性了。
4896 次点击
所在节点    问与答
16 条回复
zythum
2012-01-21 22:06:43 +08:00
朱一也对as不熟悉,但是没关系的。可以用html based。同样可以搞定

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

[code]
stage.quality = StageQuality.HIGH;
stage.scaleMode = StageScaleMode.NO_SCALE;
stage.align = StageAlign.TOP_LEFT;
[/code]
Hyperion
2012-01-22 01:23:38 +08:00
抓取网页比较靠谱. 入口 -> http://weibo.cn/dpool/ttt/index.php

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

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

不过看样子春晚前是不能弄出个不错的版本了= =等后年吧- -。
WarWithinMe
2012-01-22 22:06:01 +08:00
@zythum 没用豆瓣FM(也就没用过大萌神的这个),所以没有发言权。。做出好东西来还是能的。。但比较大一点的程序估计很能把效果弄好。。
zythum
2012-01-22 22:17:48 +08:00
@WarWithinMe 新年不吐槽这个了.仅从开发成本就可以说明问题。
WarWithinMe
2012-01-23 14:15:41 +08:00
@zythum lol。。。我错了。。。昨晚下了Crunch!下来用了一下,发觉HTML based的效果真的可以。。。Forgive me。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/25961

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX