一般来说,如果你的手机没有联接到任何一个基站信号的话,你是无法获取手机号码的,也就是说,如果你用的是联通的SIM卡,而你的所在地接受不到联通信号的话,你是无法获取手机的号码的。手机只要联接到了任意一个基站,就会一直与这个基站进行通信,你在Android应该中要获取手机号,在API中有一个TELPHONEMANAGER(大概是这样,不大记得清了)类,其中包装了获取手机信息的方法,获取手机号码就是其中一个,它的基本原理和楼上说的差不多,当你调用这个API时,手机会自动与基站联系,基站再把手机号发送给你。
如果使用的是wap接入点,你可以和运营商合作,让他们把手机号送到服务器端。
(TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE).StringgetLine1Number() Requires Permission: READ_PHONE_STATE
TelephonyManager tm = (TelephonyManager) this.getSystemService(TELEPHONY_SERVICE);
String phoneNum=tm.getLine1Number();
textView1.setText("本机号码"+phoneNum);//添加权限
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
、、貌似能获得模拟器上的号码,放到手机上就获取不到了,楼主问题解决了吗???
TelephonyManager tm = (TelephonyManager) this.getSystemService(TELEPHONY_SERVICE);
String phoneNum=tm.getLine1Number();
textView1.setText("本机号码"+phoneNum);//添加权限
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
、、貌似能获得模拟器上的号码,放到手机上就获取不到了,楼主问题解决了吗???