找回密码
 加入我们

QQ登录

只需一步,快速开始

搜索
查看: 974|回复: 2

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

[复制链接]
发表于 2012-10-25 20:48 | 显示全部楼层 |阅读模式
转自煮机用户jarryson 的贴子:
9 j" _, `( p1 S& e0 j( C0 c2 l$ x3 a9 r9 m6 ^% C$ E
短信死机是因为短信过长,可能超过通知栏的缓冲区,而系统无法处理这类异常。通过哪个过长补丁,是只限制显示前面20个字符可以解决死机问题。但是这样会出现白色方块。
& z$ i' d7 w$ E) E+ L) r/ g+ L! c: l# ~, Q
很多人说出现方块是因为内存不足。但是无法解释此后所有程序使用通知栏,无论中文英文都方块。
, z+ n0 l3 G  u7 T% [% j$ B3 k; t
" K# G, w4 I. y) k其实更可能的原因是中文是双字节,而通过过长补丁修改后,截取前面20个字符,正好截取到中文字符的一半,此后所有的字符都成了不可识别字符,当然无法显示了。Webos类似的BUG实在是太多了。比如波浪任务栏。3 F1 K7 h! h6 g$ P
% S8 X( R+ E* l5 v$ R+ Q
Private补丁通过不让显示消息内容实现避免死机和出现方块。这里的实现也是类似的,不过不是直接修改系统文件,而是通过中文语言文件。
1 J, h9 j4 E3 u# v* ?+ z" y/ m( B- K
尽量少修改系统文件的好处是减少补丁冲突的可能。修改语言文件更加灵活。无论你打了以上哪个补丁都不冲突,这一个优先级更高。8 t# d; r1 D: a/ A# b. {
+ `- v$ W7 g! E2 h" v( ]9 G
方法如下:$ m& G4 u3 B5 j6 e) j: I
修改/usr/palm/applications/com.palm.app.messaging/resources/zh/cn/strings.json,
, K0 U+ n4 F# M3 J8 j8 V+ `在中间加上一行,注意不是放在最后的话,结尾必须带逗号  A: N9 |4 E, p$ J$ _) [

6 q, V' I8 u  P    "#{name}: #{message}": "#{name}的短信",. m, c- X0 `6 @; S) o: i- g# |
, W9 X  F/ \/ v3 X7 J7 w  p
相信原理一看便知道了。原代码这一段是可以自定义成多国语言的,因此直接汉化,不显示后面的变量即可。
4 l8 H; j% C% g* f: K0 E  f8 p$ @6 f) c5 H

  R' s- U7 n+ F. y, b 该贴已经同步到 bestip的微博
回复

使用道具 举报

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

使用道具 举报

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

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-29 03:05 , Processed in 0.300564 second(s), 17 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

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