找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
查看: 1011|回复: 2

[技巧] 解决短信方块和短信死机新办法,减少补丁冲突

[复制链接]
发表于 2012-10-25 20:48 | 显示全部楼层 |阅读模式
转自煮机用户jarryson 的贴子:  Z8 d- {  q) ^4 ~8 o0 M0 O: z
4 D0 W% ^2 G" W8 e# Z* j/ [
短信死机是因为短信过长,可能超过通知栏的缓冲区,而系统无法处理这类异常。通过哪个过长补丁,是只限制显示前面20个字符可以解决死机问题。但是这样会出现白色方块。
  a# U1 `9 f. a2 N- \0 v, C
& U/ Y; M6 F0 f" Q很多人说出现方块是因为内存不足。但是无法解释此后所有程序使用通知栏,无论中文英文都方块。& O8 G7 A4 R9 D7 F" m
& t& w- |' L/ o) b: }
其实更可能的原因是中文是双字节,而通过过长补丁修改后,截取前面20个字符,正好截取到中文字符的一半,此后所有的字符都成了不可识别字符,当然无法显示了。Webos类似的BUG实在是太多了。比如波浪任务栏。1 t( r$ S" m) Z7 ?  T/ a  h

" }- t! @" l1 |Private补丁通过不让显示消息内容实现避免死机和出现方块。这里的实现也是类似的,不过不是直接修改系统文件,而是通过中文语言文件。
6 v, ~8 I8 `! K: l3 |2 \5 ?  h; ]1 [8 w2 `! [$ }
尽量少修改系统文件的好处是减少补丁冲突的可能。修改语言文件更加灵活。无论你打了以上哪个补丁都不冲突,这一个优先级更高。
; T3 O; n; r% _; {" \! B5 e( o( P  \- J( e8 M
方法如下:
4 b( p! w* s1 s修改/usr/palm/applications/com.palm.app.messaging/resources/zh/cn/strings.json,
0 g0 L' j0 o! ~8 B) N# @% _! F在中间加上一行,注意不是放在最后的话,结尾必须带逗号
$ l/ W$ @2 [& g% [& x. Z
3 T! W2 U1 U- E. ]& x    "#{name}: #{message}": "#{name}的短信",
, t% P4 D* y* }! ]7 O, I. `2 |$ P$ _7 y
相信原理一看便知道了。原代码这一段是可以自定义成多国语言的,因此直接汉化,不显示后面的变量即可。8 v+ J7 d6 X+ N- w) \& i
6 t6 ^6 @" @) g/ ~' X1 ]

% B% C  J- @0 [ 该贴已经同步到 bestip的微博
回复

使用道具 举报

 楼主| 发表于 2012-10-25 20:48 | 显示全部楼层
pre 2 2.24亲测成功。
回复 支持 反对

使用道具 举报

发表于 2012-11-27 12:52 | 显示全部楼层
刚刚测试了,非常完美,谢谢!
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

QQ|Archiver|手机版|小黑屋|吹友吧 ( 京ICP备05078561号 )

GMT+8, 2025-4-3 06:44 , Processed in 0.266960 second(s), 17 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表