|
|

楼主 |
发表于 2005-12-26 23:56:49
|
显示全部楼层
刚刚看了旧版本的 LumaQQ,它并没有解决我所遇到的问题。
旧版本 LumaQQ 只不过把 WorkingDirectory 指向了 .app 内部的 Contents/Resources 中。
结果一旦登陆 QQ 后,将会改写 LumaQQ.app 里面的文件。
事实上目前我自己将数据写到 /Library/LumaQQ 中已经让我非常难以接受,更不要说写到应用程序里了。
虽然这样可以打一个包走天下,不需要安装,但这样确实破坏了文件结构。
在 Mac OS X 里的最理想情况是将数据写到用户目录的 ~/Library/LumaQQ 中,但在 Info.plist 里指定 Arguments 参数是无法加入任何代表主目录的变量的 - $HOME 和 ~ 都不可用。
看了一下 LumaQQ.java,里面是把第一个参数做为工作目录的,而 for Linux 的启动脚本是在 ~/.lumaqq 的目录中将 xml, sound, log4j.properties 和 QQWry.dat 从原有的工作目录中建了一个链接,启动 LumaQQ 时将 ~/.lumaqq 转换成新的工作目录。
但是这样在 Mac OS X 下不可行,因为 .app 到处都可以运行,不能很单纯的检查应用程序的执行路径,因为 LumaQQ 在 .app 里的执行文件不在 $PATH 里。
我尝试写脚本这样干过,可是总是报出无法找到 swt 库,我会继续看看。
而上面说过了,Info.plist 里给 LumaQQ 的参数带环境变量是不会转译的。
我目前的方法类似,也仅仅把数据直接指向 /Library/LumaQQ,这样让我觉得多少比指到程序里面去好一点。
而 .pkg 也是除了拖放外,OS X 下的另一个安装程序的标准。多点两下鼠标罢了。
这部分还需要劳 Luma 兄再努力改改,在程序初始化时把 INSTALL_DIR 数据,分成 DATA_DIR 和 USER_DIR。这样可能方便很多。
不知道在 Windows 下 LumaQQ 是否会把数据丢到 \Documents and Settings 里的用户目录里去。
LumaQQ 在 Mac OS X 下还有很多 bug:
包括很多字符显示成方块
最小化时没有缩到 Dock 里而是直接消失
直接从屏幕上方的 LumaQQ 菜单里退出将导致程序停止响应
还有 QuickTime 提到的 LumaQQ 启动后最小化窗口会发生停滞现象,我下午也遇见了。
其实我这人一不用 QQ 二不懂 java,只不过看见下载栏那里空闲,才打了个包。
只要时间够,我会尽量帮忙修复这些 bug,提高 LumaQQ 在 OS X 下的可用性。
btw: LumaQQ 的代码风格不错,注释很多,在 Eclipse 里看着很舒服。
btw2: 第一次感到 Eclipse 也是个极好的编辑器,找了个学 Java 的同学讨教了一下,马上感到 Eclipse 的强大。 |
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
|