2013-05-05 27 views

回答

1

发送从控制台SMS:

1)打开控制台;

2)键入'telnet localhost xxxx',其中xxxx是模拟器ID。这与标题栏中模拟器名称之前的数字相同,通常为5554,除非您有其他模拟器在运行;

3)输入“手机短信发送1234567消息”其中,消息是SMS消息

4)观看你的模拟器通知栏的文字,你会看到一个短信发送

由于只要你愿意成为肉食短信网关,在仿真器之间手动发送消息,你就可以得到你想要的。仿真器实例之间

发送短信:

使用模拟器ID的电话号码。似乎仿真器使用格式为1 555 521 xxxx的虚拟电话号码,其中xxxx是仿真器ID,例如, 1 555 521 5554.

+0

我想测试我的应用程序可以发送短信。所以从控制台做它不会工作.. :) – 2013-05-05 07:31:33

+0

编辑答案。试试吧,为我工作。如果您的短信功能正常,那么您应该可以复制我的结果。 – MarsAtomic 2013-05-05 08:06:03

+0

模拟器的东西没有工作,但在真实的设备上测试和工作:) – 2013-05-06 11:42:50

1

非常好的问题:我的回答也有点复杂但很容易: 是的....您可以获取AVD运行的端口号。 简单,你所要做的:

  1. 获得模拟器

  2. 最后4位数电话号码的电话号码是端口号。 5554或5556 ....等

代码段:

 TelephonyManager telephonyManager = (TelephonyManager)this.getSystemService(Context.TELEPHONY_SERVICE); 
     String phoneNumber = telephonyManager.getLine1Number(); 
     String portNumber = phoneNumber.substring(phoneNumber.length() - 4, phoneNumber.length()); 
     Log.d(TAG, "Line1 number # " + portNumber); 
     tv1.setText(portNumber); 

清单文件允许权限:

<uses-permission android:name="android.permission.READ_PHONE_STATE"/> 

输出:

enter image description here

+0

如果有人使用Em。 M API 23那么权限问题就在那里..所以你必须添加运行时权限 – 2016-02-10 15:52:53