|
红苹果
 
- UID
- 33836
- 帖子
- 239
- 精华
- 0
- 积分
- 280
- 经验
- 280 分
- 人气
- 38 ℃
- we券
- 303 张
- 推广分
- 0 分
- 阅读权限
- 30
- 注册时间
- 2007-10-19
|
1楼
大 中
小 发表于 2008-1-7 07:36 只看该作者
[翻译+转载]全新修改运营商图标方法......(白屏同学重新查看)
本帖翻译+转载自n000b发表在hackint0sh的帖子
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~以下翻译
旧的运营商图标修改是强制性的使springboard显示at&t的图标.这个在你漫游的时候并不方便..因为图标不会变化..
我新写了一个补丁(实际上是一个插入库),允许你添加任意数量的运营商图标. springboard会从一个plist文件中读取当前运营商的图标,并且显示,即使你在漫游的状态,也会正确的显示..
这个补丁不会修改系统本身的springborad,它只是修改了图标的检索过程.
这个补丁可以应用在任意状态的springboard,无论你是修改过还是没有修改过.. 本补丁除了添加任意的运营商图标外不会修改其他任何东西.
请下载对应的补丁.
1.1.1的补丁: http://tinyurl.com/2ctwvp
1.1.2的补丁: http://tinyurl.com/2ykw84
或者下载本帖最后的附件.注意版本
如何使用:
1 上传extSpringBoard.dylib到iphone的/usr/lib.给与0755的属性..
2 创建一个名字为Carriers.plist的文件,放在/System/Library/CoreServices/SpringBoard.app/下
这是一个识别运营商图标的xml文件,格式如下.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~分割线
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>ChinaMobile</key>
<string>CARRIER_MobileOSX</string>
</dict>
</plist>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 分割线
每一个运营商图标需要2行来定义,在<key></key>的中间是运营商的名称,在<string></string>中间是运营商图标名称,你可以添加任意数量的运营商和图标... (关于如果获得运营商名称请看后面)
每一个运营商你需要2个png图标,一个名字是Default_<运营商图标名称>.png一个是FSO_<运营商图标名称>.png,都是直接放在Springboard.app里面的.
3 修改/System/Library/LaunchDaemons/com.apple.SpringBoard.plist文件,在第一个<dict>下面添加以下内容
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~分割线
<key>EnvironmentVariables</key>
<dict>
<key>DYLD_INSERT_LIBRARIES</key>
<string>/usr/lib/extSpringBoard.dylib</string>
</dict>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~分割线
如果已经存在<key>DYLD_INSERT_LIBRARIES</key>,你只需要在<string></string>中间添加以下内容/usr/lib/extSpringBoard.dylib,用冒号':"和其他的隔开,如下(下面只是一个示例,每个人的机器不一样,具体按照自己的机器来添加..)引用:<string>/usr/lib/extSpringBoard.dylib:/usr/lib/iCosta.dylib:/Library/Frameworks/SummerBoard.framework/SummerBoard.dylib</string>
4 重置springborad或者重启iphone.即可生效..
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
如何获得你的运营商名称..
检查 /var/log/syslog 有很多重要的信息都在syslog中..
如果运营商名称和运营商图标匹配,下列信息会出现在syslog中..
>>> Carrier is China Mobile
>>> Logo is CARRIER_CHINAMOBILE (前提是你的运营商是China Mobile)
如果运营商名称和运营商图标不匹配,则如下显示.
>>> Carrier is China Mobile
>>> No associated logo
之后你就可以用syslog中的运营商名称来修改你的Carriers.plist, 注意 请去掉运营商名称中间的空格.
如果没有/var/log/syslog文件
1 在/etc/下创建syslog.conf文件,内容为
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~分割线
*.* /var/log/syslog
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~分割线
2 修改/System/Library/LaunchDaemons/com.apple.syslogd.plist文件
在<string>/usr/sbin/syslogd</string>下添加
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~分割线
<string>-bsd_out</string>
<string>1</string>
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~分割线
3 重启
转载完毕..引用:n000b说:
Is this patch safe?
Yes, in case you did something wrong in any step, the library will simply not be loaded, and the original SpringBoard will take control, and you won't be stuck at Apple logo screen. Of course, you lose the abilities to scroll as well as to add more carriers. Once you fix the error and have the library successfully loaded, it'll override some methods and offer will function immediately. ps: 偶都换了5个标题了.咋没人顶呢..(过时了..过时了...俺是凑psp的)
ps2:论坛的quote会在引文的每一行前添加2个空格,我不知道这是不是直接复制的朋友的问题所在,我把quote去掉了,使用华丽的分割线来代替
ps3:关于Carriers.plist,其中运营商是谁并不重要,只要是和syslog中的运营商名称符合就好(注意去掉syslog中的运营商名称中间的空格,比如syslog中为China Mobile, Carriers.plist中的就是ChinaMobile
psp:注意.plist编辑器的使用.... Mac的朋友可以使用BBedit直接编辑,然后传入电脑,pc的朋友请看如何修改"乱码"的 plist 文件
或者使用此编辑器http://www.htmlbeauty.com/bsetup.exe
psp2:n000b更新了补丁,添加了multipage scrolling(多页滚动?我不知道该怎么翻译..)的功能,但是新的补丁会造成summerboard的skip last row的效果失效,所以我没有上传..有需要的可以去以下地址下载
For 1.1.1: http://tinyurl.com/2xdcbt
For 1.1.2: http://tinyurl.com/22x8j4
[ 本帖最后由 oaixnait 于 2008-2-1 01:29 编辑 ]
附件
-
111_extSpringBoard_dylib.zip
(2.65 KB)
-
2008-1-9 02:34, 下载次数: 143
1.1.1 版本适用..
-
112_extSpringBoard_dylib.zip
(2.64 KB)
-
2008-1-9 02:34, 下载次数: 331
1.1.2 版本适用
-
Picture 1.jpg
(51.99 KB)
-
2008-1-13 03:48
本人的Carriers.plist
-
Picture 2.jpg
(110.97 KB)
-
2008-1-13 03:49
本人的springboard.plist,红色部分是我添加的部分
|