手机号码2008服务器密码忘记了忘记了怎么办?

在对Android设备进行Stability自动化测试的时候,其中一个Reference测试需要获取手机号码和IMEI号码,大家有什么好的方案吗?
该问题被发起重新开启投票
投票剩余时间:
之前被关闭原因:
该问题被发起删除投票
投票剩余时间:
距离悬赏到期还有:
参与关闭投票者:
关闭原因:
该问题已经被锁定
锁定原因:()
保护原因:避免来自新用户不合宜或无意义的致谢、跟帖答案。
该问题已成功删除,仅对您可见,其他人不能够查看。
String imei = ((TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE))
.getDeviceId();
不知道你说的获取手机号码,是通常说的电话号码,还是sim卡后面的那20位的号码.----------------以下内容来自百度搜索---------------------------那么查一下andorid源码可以看出:/android/mydroid/frameworks/base/telephony/java/android/telephony/TelephonyManager.java从注释里明显看出来这个函数是取SIM卡序列号的,也就是ICCID的,他用错了。
* Returns the serial number of the SIM, if applicable.
* Requires Permission:
{@link android.Manifest.permission#READ_PHONE_STATE READ_PHONE_STATE}
public String getSimSerialNumber() {
return getSubscriberInfo().getSimSerialNumber();
} catch (RemoteException ex) {
2.相关几个定义、说明:我们说到的和手机、卡相关的号码数据包括IMSI,MSISDN,ICCID,IMEIIMSI:international mobiles subscriber identity国际移动用户号码标识,这个一般大家是不知道,GSM必须写在卡内相关文件中;MSISDN:mobile subscriber ISDN用户号码,这个是我们说的139,136那个号码;ICCID:ICC identity集成电路卡标识,这个是唯一标识一张卡片物理号码的;IMEI:international mobile Equipment identity手机唯一标识码;3.那好我们看看andorid实现TelephonyManager.java的源码:getDeviceId()取IMEI号没有争议了。
* Returns the unique device ID, for example,the IMEI for GSM
* &p&Requires Permission:
{@link android.Manifest.permission#READ_PHONE_STATE READ_PHONE_STATE}
public String getDeviceId() {
return getSubscriberInfo().getDeviceId();
} catch (RemoteException ex) {
getLine1Number()取MSISDN,这个需要说明两点,1为什么这个函数叫getLine1Number(),因为andorid实现的时候应该分为GSM和CDMA的,GSM手机使用这个函数,CDMA应该还会由其它实现的。2取MSISDN具体的方法就会导致最后能否取到了,函数中调用了getSubscriberInfo().getLine1Number()去实现,我们下面找找看。
* Returns the phone number string for line 1, for example, the MSISDN
* for a GSM phone.
* Requires Permission:
{@link android.Manifest.permission#READ_PHONE_STATE READ_PHONE_STATE}
public String getLine1Number() {
return getSubscriberInfo().getLine1Number();
} catch (RemoteException ex) {
private IPhoneSubInfo getSubscriberInfo() {
// get it each time because that process crashes a lot
return IPhoneSubInfo.Stub.asInterface(ServiceManager.getService("iphonesubinfo"));
一个接口,再找有一个PhoneSubInfo.java:
* Retrieves the unique device ID, e.g., IMEI for GSM phones and MEID for CDMA phones.
public String getDeviceId() {
mContext.enforceCallingOrSelfPermission(READ_PHONE_STATE, "Requires READ_PHONE_STATE");
return mPhone.getDeviceId();
前面定义了Phone mPhone,再找Phone.java:
* Retrieves the unique sbuscriber ID, e.g., IMSI for GSM phones.
String getSubscriberId();
原来是个接口,发现PhoneProxy.java有具体实现
public String getSubscriberId() {
return mActivePhone.getSubscriberId();
这个mActivePhone是phone的实例,我疯了,于是发现GSMPHONE。java中有了具体实现:
public String getSubscriberId() {
return mSIMRecords.
public String getIccSerialNumber() {
return mSIMRecords.
public String getLine1Number() {
return mSIMRecords.getMsisdnNumber();
从上面看出来,应该是通过SIM卡相关文件记录得到的上述数据,从其中看到:public void handleMessage(Message msg) 这个函数进行了真正的处理,重点看:
case EVENT_GET_MSISDN_DONE:
isRecordLoadResponse =
ar = (AsyncResult)msg.
if (ar.exception != null) {
Log.d(LOG_TAG, "Invalid or missing EF[MSISDN]");
//应该是从sim卡的EFmsisdn文件中取出来的
adn = (AdnRecord)ar.
msisdn = adn.getNumber();
msisdnTag = adn.getAlphaTag();
Log.d(LOG_TAG, "MSISDN: " + msisdn);
下面的细节就不分析了,那个问题就归结到是否可以从SIM卡的EFmsisdn文件取出手机号码了,不幸的是一般运营商不会把用户号码写在这个文件的,为什么呢?因为这个手机号码是在用户买到卡并开通时才将IMSI和MSISDN对应上的,卡内生产出来时只有IMSI,你不知道用户喜欢那个手机号码,因此一般不先对应IMSI和MSISDN,即时有对应也不写这个文件的。
4.总结一下:TelephonyManager tm = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);
String imei = tm.getDeviceId();
//取出IMEI
String tel = tm.getLine1Number();
//取出MSISDN,很可能为空
String imei =tm.getSimSerialNumber();
//取出ICCID
String imsi =tm.getSubscriberId();
//取出IMSI
以上内容来自:/mblog/427_62947
<dd style="float:cursor:" title="声誉值:
不是您所需,查看更多相关问题与答案
德问是一个专业的编程问答社区,请
后再提交答案
关注该问题的人
共被浏览 (11977) 次无法接通激活服务器怎么办?苹果5s a1533?求解!id账号密码忘记了。 苹果5s怎么激活啊,忘记id账号和密码了
你正在浏览: & >
无法接通激活服务器怎么办?苹果5s a1533?求解!id账号密码忘记了。
无法接通激活服务器怎么办?苹果5s a1533?求解!id账号密码忘记了。
请携带购机证明前往苹果售后协助解决。3。3,可以点击创建id或跳过此步骤选项来完成激活苹果手机ID邮箱密码忘记之后的激活步骤:1、若是已使用过并开启了查找我的iphone功能的手机,恢复出厂设置后重新激活,没有id是无法激活的、新手机在激活时、新手机在激活时,会询问是否要用 Apple ID 账号来登录,若以前有id苹果手机ID邮箱密码忘记之后的激活步骤:1、若是已使用过并开启了查找我的iphone功能的手机,恢复出厂设置后重新激活,没有id是无法激活的,请携带购机证明前往苹果售后协助解决。若没有id,可以在这里直接登录。若没有id。若是新购买的手机,首次激活不需要id也可激活(需保证手机插着sim卡)。若是新购买的手机,首次激活不需要id也可激活(需保证手机插着sim卡)、开启了查找我的iphone的手机,若忘记了id想要激活,可以在这里直接登录。2。2、开启了查找我的iphone的手机,若忘记了id想要激活,会询问是否要用 Apple ID 账号来登录,若以前有id
qq邮箱的设置方法 确定手机网络没有问题的詻 网络正常就是 邮箱设置问题了 在 设置&通用里,里面有...~~~
A:正常恢复 这个恢复方法是在一般的解锁教程中最常用的恢复iPhone固件的方法。 1.将iPhon...~~~
准备好苹果 iPhone要用到的手机卡(即Nano-SIM卡或micro-SIM卡),如果是没有插入...~~~
无法访问苹果激活服务器大多数情况是网络问题,建议直接用手机移动网络激活,或者换个wifi信号再试,多...~~~
苹果手机网络信号差解决办法: 一 重启手机,苹果手机重启自带修复系统 二 可以尝试对 iPhone ...~~~
1.重新启动设备   如果发现手机当前不能激活的话,可以尝试关机或者重新启动设备,随后再尝试重新激活...~~~
自己拨打苹果客服问一下,是手机问题还是你的网络问题~~~
我看你好像插卡了,链接了wifi 但是你的卡好像一直在搜索中 没有运营商信号。 你可以不插卡直接wi...~~~
多激活几次,网络问题或者苹果服务器的问题,还不行就同时按住HOME键和电源键强制重启
你可能感兴趣的内容?

我要回帖

更多关于 2008服务器密码忘记了 的文章

 

随机推荐