[投稿]ALX与JAD文件详解
[ BERRYTIMES ]:入门了的黑莓控都不会对以alx和cod结尾的文件陌生,你的rom的java文件夹里面一个个cod文件正是对应了安装在你手机里面的一个个程序的,你的那些新下载的软件程序和主题啊也都是由alx和cod文件组成的,进入DM的时候,你选择新安装主题和程序的时候,读取的正式alx文件。你甚至还可能知道一个小程序叫做AlxBuilder的。上一篇我们已经了解了winloader的详细功能情况,那么今天我们收到的来自xoolhaha的技术投稿连载第二弹,讲到就是alx和cod文件的详细情况,相信看完了这篇,不仅仅你能明白这俩格式的文件是干嘛用的,也甚至能帮你实际解决一些平时遇到的安装报错或者有好软件却用不了的困惑吧。一起来看看吧。
ALX与JAD文件详解
作者:xoolhaha(柚子)| 网络首发:BerryTimes.cn
上一篇文章中,柚子给大家详细介绍了Winloader的使用方法。为什么要先介绍Winloader呢?因为这是玩BB得基本功: ) 那下面我们该进阶了~Let’s go!
ALX文件介绍:平时,每个安装的软件都是以1 alx文件,1个或1个以上cod文件为一个组合的。其实真正的软件就是cod文件,而alx文件说白了就是个注册文件–为了在黑莓的程序列表中方便生成程序列表与在手机中对程序进行删除造作是使用的。
由于大家习惯于用DM安装软件(界面最友好),那每次我们下载到的cod就必须有一个alx。许多人在只有cod的情况下会使用”alx生成器”的东西。起初柚子也用,但后来发现这软件实在是没什么技术含量,只是一个代替打字的过程。所以后来柚子每次转cod都是自己写alx。其实真的很简单: ) 只要勇于尝试,很多事其实都很简单,不是么?
我们用记事本打开Alx文件后会发现,其实Alx内部是HTML语句,其结构为:
<loader version=”1.0″>
<application id=” XXXXX “>
<name>XXXXX</name>
<description>XXXXX</description>
<version>X.X.X</version>
<vendor>XXXXX </vendor>
<copyright>Copyright (c) 2001-2007 All Rights Reserved.</copyright>
<fileset Java=”1.0″>
<files>
XXXXX.cod
</files>
</fileset>
</application>
</loader>
结构很清晰,柚子打XXXXX的地方就是可以修改的地方。对应我们相应的cod,需要修改以下的地方:application id和name就是软件名称,description就是软件描述,version就是软件版本号,vendor为制造者,files为cod文件。此处为相对路径,只要写出cod名即可。如果有多cod,可以用空格隔开每个文件名,然后填在files栏中。(注意,填写内容也必须是英文与数字)改好后将alx与cod放在一个目录下就可以用DM装载了~
JAD文件解析
大家每次OTA(在线安装)软件时,都会发现,我们在进入了一个.jad文件后,手机会出现个特殊的页面,有name、version、vendor、size、description信息以及一个download一个cancel按钮。然后我们选择download就可以从网上下载软件了,下载后手机自动安装~很方便但也很占流量……流量是要钱的(上海一个月50M收20元,我经常月中就用完了- -b),所以我们用手上的电脑来解决这个问题。
首先我们要认清目标:BB手机可以执行的软件后缀名为.cod和.jar,二者都为j2me平台的java软件。而cod的反编译以及加密性较jar更胜一筹。所以我们解析jad文件的目标就是要寻找cod文件或是jar文件的地址,然后下载下来,最后用DM或者是放到储存卡里安装。
思路理清了,下面就是操作了。
首先我们先用手上的黑莓或电脑上手机网,我们这里拿viigo作例子。
先用电脑上手机网,中国的许多网站(QQ、Sina等)是检测接入点的,也有国外网站是检测浏览器的,可能电脑上不了,那就用手机上。然后层层突破,最终到达下载页面。然后查看最终下载链接的地址。Viigo最新预览版的地址是:http://downloads.viigo.com/bb/wes/4.2/ViigoSE/ViigoSE.jad 我们将这个文件下载下来。然后用记事本打开。
我们注意到有这么一些jar与cod文件。其前标为:MIDlet-Jar-URL(这个没用)以及RIM-COD-URL-n(这个是关键)这两个,后面跟的.cod文件非常的”可疑”,我们不妨将他们认定为程序的cod。然后开始组织完整的下载地址:将相对路径转换为绝对路径,既将jad文件的下载地址中的ViigoSE.jad替换为cod文件。
于是经过一番复制粘贴,我们提取出了Viigo安装所需的全部文件:
- http://downloads.viigo.com/bb/wes/4.2/ViigoSE/com_virtualreach_connect_newsapp_app_se.cod
- http://downloads.viigo.com/bb/wes/4.2/ViigoSE/com_virtualreach_connect_newsapp_resources_colour.cod
- http://downloads.viigo.com/bb/wes/4.2/ViigoSE/com_virtualreach_connect_news.cod
- http://downloads.viigo.com/bb/wes/4.2/ViigoSE/com_virtualreach_connect_collection.cod
- http://downloads.viigo.com/bb/wes/4.2/ViigoSE/com_virtualreach_connect_connect.cod
- http://downloads.viigo.com/bb/wes/4.2/ViigoSE/com_virtualreach_connect_output.cod
- http://downloads.viigo.com/bb/wes/4.2/ViigoSE/com_virtualreach_connect_util.cod
- http://downloads.viigo.com/bb/wes/4.2/ViigoSE/com_virtualreach_connect_newsapp_app-1.cod
- http://downloads.viigo.com/bb/wes/4.2/ViigoSE/com_virtualreach_connect_newsapp_app.cod
- http://downloads.viigo.com/bb/wes/4.2/ViigoSE/com_virtualreach_connect_newsapp_app2.cod
- http://downloads.viigo.com/bb/wes/4.2/ViigoSE/com_virtualreach_connect_hecl.cod
- http://downloads.viigo.com/bb/wes/4.2/ViigoSE/com_virtualreach_connect_ui.cod
- http://downloads.viigo.com/bb/wes/4.2/ViigoSE/com_virtualreach_connect_newsapp_app3.cod
- http://downloads.viigo.com/bb/wes/4.2/ViigoSE/com_virtualreach_connect_parser.cod
- http://downloads.viigo.com/bb/wes/4.2/ViigoSE/com_virtualreach_connect_platform.cod
然后用下载工具下载就是了。
下载完成后把.jad和以上所有的cod放在BB内存卡的同一个目录下,然后到BB的多媒体-菜单-浏览 找到jad文件运行,就可以正常安装了。
当然,.jar文件也是同理。只要找到文件名,再把相对路径转换为绝对路径就好了。
那么……所有的ota软件都等着大家呢~
如果有同学会编程,那就太好了,帮忙写个小软件就好。柚子也正准备去自学一下ahk编程,等会了以后(不可预见的将来,所以先不要指望我)给大家编个软件……到时候就不用手动转地址了。
最后祝君好运,发现好玩的别忘了来berrytimes和大伙分享哦!
下一集,柚子将向大家介绍各种各样的cod安装方法,敬请期待。























学习了
昨天升级Document to Go白金版,忍受了漫长的下载过程,早看到这篇文章就可以试试电脑上下了
很多时候jad在手机上安装会出907错误,可以用winloader载入,就可以解决。
柚子的美文,赞一个!其实俺一直有个习惯,就是用写字板打开各种文件看看里边藏着什么……
好好好,OTA的DTG白金版文件彻底搞定,柚子,谢了!!
再分享个技巧啊~把提取出来的地址放在记事本里一行一个文件,然后另存为.lst文件,可以用迅雷一起导入。节省很多时间。
[Comment ID #572 Will Be Quoted Here]
柚子你太赞了。俺就是这样做的,现在DTG离线包已经搞定了,瞧:
http://leondepro.blogbus.com/logs/23263809.html
什么时候研究ALX和JAD互转啊….一起研究哈
[Comment ID #638 Will Be Quoted Here]
根据本文,理论已经完成了。互转自己来吧。写出来就不好玩了。注意逆向思维。
[Comment ID #702 Will Be Quoted Here]
问题是貌似那个JAD是对每个COD的大小都定义了,而且COD还不能很大
你会分割COD么?
[Comment ID #726 Will Be Quoted Here]
winrar
[Comment ID #772 Will Be Quoted Here]
原来就这么简单….
真是好文章啊 !解决了我的大问题啊 !!wl还是不方便,尤其是jad和cod文件一起的时候OTa提供的很多cod,还是用扔到媒体卡里面方便啊!!
头都大了,愣是没明白·
厉害厉害,刚用此方法搞定了头痛很久的chronos计时器软件,万分拜谢大大!