爱技术

 找回密码
 注册会员

QQ登录

只需一步,快速开始

微信登录

微信扫一扫,快速登录

搜索
查看: 1210|回复: 14
收起左侧

[原创] CertifyMidlet制作认证的小发现-sgold

[复制链接]
发表于 2006-5-8 16:43:03 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?注册会员 微信登录

x
不能认证的java用起来确实很烦,断断续续花了点时间,有点小发现,不敢独美,与大家分享。

怎样制作认证的方法,论坛前辈已经讲的很多了,下面只讲讲会遇到的问题

1.关于生成的jad文件的格式问题,例如对mobilezip使用jad生成器,得到的jad文件用记事本打开包含有如下几行:

MIDlet-Permissions: com.siemens.mp.io.File.readwrite,javax.microeditio
n.io.Connector.file.write,javax.microedition.io.Connector.file.read
MIDlet-1: MobileZip,/res/appicon.png,com.softexdigital.MobileZip.Mobil
eZip


认证时就会提示如下错误:

Certify Midlet 1.2
--------------------------------------------------------
Error parsing input JAD: G:\MOBILE\MobileZip.jad
***** Error: cannot add certificate to jad file *****


这是因为红色部分的格式问题,应改成如下*: *的格式,每个新行必须是字符加冒号的开头

MIDlet-Permissions: com.siemens.mp.io.File.readwrite,javax.microedition.io.Connector.file.write,javax.microedition.io.Connector.file.read
MIDlet-1: MobileZip,/res/appicon.png,com.softexdigital.MobileZip.MobileZip


保存后即可。

2.另一个关于生成的jad文件的编码格式的问题:
如果对趴趴歌词秀0.4.6使用jad生成器得到jad文件有如下行乱码

MIDlet-Description: ××××××××××

使用word打开jad文件,选utf-8编码,红色部分显示为

趴趴歌词秀,歌词同步音乐播放器,?
门子X65/X75适用


关闭后使用使用记事本打开jad文件,将那一句改成:

MIDlet-Description: 趴趴歌词秀,歌词同步音乐播放器,西门子X65/X75适用

此时注意,因为包含中文,需要保存成utf-8格式才可以生成认证!

如果不是utf-8格式,就会发生错误。

当然,新版本的趴趴生成英文的jad,没有这个问题了,不过好像还存在1里面的格式问题。

3.学习了robin等很多论坛前辈的经验,顺便也摘录总结出现认证过期问题时的处理方法如下:

1)可进行如下处理:

a  保证der证书文件和manufacturer.-_-p文件正确放置,当然还有jad文件
b  删除(或改名)程序对应的0:\系统\java下的缓存文件夹
c  将手机时间向前调(一说是2002年前?反正一直调到可以为止),在认证jad文件时,也应调整计算机时间
d  运行程序,如不成功,重复b、c直到成功为止。

以上方法我是屡试不爽的,程序改名后,把证书文件和manufacturer.-_-p文件放进去,删掉缓存,改上时间,都会成功。只要认证成功后不删除那个缓存文件夹,不改名,以后应该都不会有什么问题吧。

提示认证对象错误什么的,一般是der证书文件和manufacturer.-_-p文件不对,我还没遇到过。


2)感觉java在启动时,应该是首先在缓存文件夹(0:\system\java或者0:\系统\java下)下查找对应的认证信息,因为缓存文件夹不删除的话就可以一直不用重新认证程序,所以最近有个想法:
如果使用公共证书,因为凭证文件都是一样的,jad也是一样的,那么,如果在手机里运行认证的时候,不和手机硬件信息挂钩的话,对那些认证过期的机油,应该直接把别的手机里认证成功的,那个缓存文件夹下set开头的cache文件拷贝过来就可以用了,或者直接拷整个缓存文件夹。最好连那个der证书和-_-p文件也一并拷贝。当然,java文件,路径和文件名要一样。

寻找对应的缓存文件夹可以试试faterpan的原创软件,pc端的就很好用:
http://mobile.0110.cn/viewthread.php?tid=243856&highlight=JavaNumber
不知道说得对不对,期望高人指点,机油可以试试。


3)有机油说直接刷一遍map就可以完全解决认证过期的问题,有数据线的机友也可以试试看。

[ 本帖最后由 jpg001 于 2007-3-30 23:18 编辑 ]

评分

参与人数 1实力分 +2 收起 理由
starfriend + 2 奖:感谢-你和大家分享资源与经验!

查看全部评分

发表于 2006-6-13 13:35:51 | 显示全部楼层
好帖!
回复 支持 反对

使用道具 举报

发表于 2006-6-27 21:19:08 | 显示全部楼层
不错不错

支持支持
回复 支持 反对

使用道具 举报

发表于 2006-6-28 07:42:27 | 显示全部楼层
好文。

缓存文件夹是哪个?
回复 支持 反对

使用道具 举报

发表于 2006-7-3 12:39:12 | 显示全部楼层
b 删除(或改名)程序对应的0:\系统\java下的缓存文件夹


请问,怎么才能知道java程序对应的缓存文件夹,比如说microreader对应的缓存文件夹是哪个?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2006-7-3 12:50:12 | 显示全部楼层
原帖由 lsw0922 于 2006-7-3 12:39 发表


请问,怎么才能知道java程序对应的缓存文件夹,比如说microreader对应的缓存文件夹是哪个?



http://mobile.0110.cn/viewthread.php?tid=171533
有不少了。新的程序自己也可以试,第一次运行后找新建立的文件夹
回复 支持 反对

使用道具 举报

发表于 2006-7-3 12:57:14 | 显示全部楼层
谢谢楼主,以前认证总不成功,反复做,改日期都不行。早就放弃了,这个回为了防盗补丁,决定对这个缓存文件夹下手。抱最后一线希望吧。
有计算缓存文件夹的小软件,刚刚发现。
http://mobile.0110.cn/viewthread ... 6%CE%C4%BC%FE%BC%D0

[ 本帖最后由 lsw0922 于 2006-7-3 13:15 编辑 ]
回复 支持 反对

使用道具 举报

发表于 2006-7-3 14:00:28 | 显示全部楼层
仍然不成功,放弃了。
时间也改到1970年了,缓存文件夹也删除了,就是安全凭证过期!
回复 支持 反对

使用道具 举报

发表于 2006-7-26 17:00:11 | 显示全部楼层
认证程序还有个办法,就是把未认证的程序"安全"删除一下(在菜单里删,不是管理器)
然后缓存文件就会一起删除
之后重新考进程序和认证文件就OK了
回复 支持 反对

使用道具 举报

发表于 2006-7-29 11:45:02 | 显示全部楼层
是这样啊,怪不得总是做不成功呢。
回复 支持 反对

使用道具 举报

发表于 2006-9-4 00:55:56 | 显示全部楼层
狂顶 啊!好贴啊!
回复 支持 反对

使用道具 举报

发表于 2006-11-12 15:33:23 | 显示全部楼层
不幸又没有钱了,赶紧回个贴!
回复 支持 反对

使用道具 举报

发表于 2006-12-14 18:45:29 | 显示全部楼层
都是强人阿
回复 支持 反对

使用道具 举报

发表于 2007-1-24 10:51:51 | 显示全部楼层
如果还不行的话,先把手机里的那个jad删除,然后运行java程序一次。退出后再复制jad进去,应该就行了。
回复 支持 反对

使用道具 举报

发表于 2007-1-24 14:04:37 | 显示全部楼层
看8懂啊啊~~
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员 微信登录

本版积分规则

小黑屋|Archiver|手机版|爱技术 ( 沪ICP备08115260号-3 )

GMT+8, 2025-9-11 13:36

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2020, Tencent Cloud.

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