大佬教程收集整理的这篇文章主要介绍了在android中获取自己的电话号码(许多问题经过测试但没有工作)?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用的是Android 2.2:
我测试了这段代码,但没有发生任何事情:
Telephonymanager phoneManager = (Telephonymanager) getApplicationContext().getSystemservice(Context.TELEPHONY_serviCE); String phonenumber = phoneManager.getLine1number();
我在我的清单文件READ_PHONE_STATE中添加了权限,在我的设置中我看不到电话号码:/
我知道我可以使用getdeviceid()得到一个唯一的id,但如果可能的话,我会得到号码电话..
你能提供更多信息吗?
有想法得到电话号码?
编辑:
在我的国家,我们可以使用USSD命令查看我们的号码,结果是在dialogBox中,我可以读取USSD响应中的数据吗?
我已经测试了这段代码,但没有得到:
@Override public void onClick(View v) { // TODO Auto-generated method stub String encodedHash = Uri.encode("#"); String ussd = "*141*1" + encodedHash; startActivityForResult(new Intent("android.intent.action.CALL",Uri.parse("tel:" + ussd)),1); } });
.
@Override protected void onActivityResult(int requestCode,int resultCode,Intent data) { // TODO Auto-generated method stub super.onActivityResult(requestCode,resultCode,data); Toast.makeText(getApplicationContext(),"USSD: " + requestCode + " " + resultCode + " ",1).show(); if (requestCode == 1) { if (resultCode == RESULT_OK) { // String result=data.getStringExtra("result"); String dd = data.toString(); Toast.makeText(getApplicationContext(),dd,1).show(); } }
我还测试了一些例子,结果是:
Android doesn't support USSD service
帮助PLZ?
> Telephonymanager.getLine1number()通常返回null,但是在罕见的手机上它实际上返回其他内容,因为它从SIM返回原始电话号码,因此无法接受答案,由于电话号码的可移植性很少是电话号码手机目前正在使用
>如果安装了whatsApp,那么对look for the account name used by WhatsApp的攻击是一种有趣的方法.不幸的是,现在已停止工作 – whatsApp不再使用经过验证的电话号码创建Android帐户作为帐户名称.
>许多需要此信息的应用程序都会进行往返短信交换,因为外发短信将携带电话号码. (虽然如果你这样做,请注意许多人反对支付短信的费用,这可能是一个高价的国际短信,所以很可能会在PLay商店给你一个糟糕的评论).
请注意,虽然在西方市场并不常见,但是有越来越多的双卡Android手机(包括新的诺基亚X),因此手机和手机号码之间没有1:1的对应关系.如果您的应用程序在没有电话号码的平板电脑上运行,您也会遇到问题.
以上是大佬教程为你收集整理的在android中获取自己的电话号码(许多问题经过测试但没有工作)?全部内容,希望文章能够帮你解决在android中获取自己的电话号码(许多问题经过测试但没有工作)?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。