1)让我的AVD的potnumber [从我的代码而不是命令行。]
2)从AVD发送消息使用在步骤1中获得的端口号自己。
[这是可能的:could one emulator send a SMS to itself]
1)让我的AVD的potnumber [从我的代码而不是命令行。]
2)从AVD发送消息使用在步骤1中获得的端口号自己。
[这是可能的:could one emulator send a SMS to itself]
发送从控制台SMS:
1)打开控制台;
2)键入'telnet localhost xxxx',其中xxxx是模拟器ID。这与标题栏中模拟器名称之前的数字相同,通常为5554,除非您有其他模拟器在运行;
3)输入“手机短信发送1234567消息”其中,消息是SMS消息
4)观看你的模拟器通知栏的文字,你会看到一个短信发送
由于只要你愿意成为肉食短信网关,在仿真器之间手动发送消息,你就可以得到你想要的。仿真器实例之间
发送短信:
使用模拟器ID的电话号码。似乎仿真器使用格式为1 555 521 xxxx的虚拟电话号码,其中xxxx是仿真器ID,例如, 1 555 521 5554.
非常好的问题:我的回答也有点复杂但很容易: 是的....您可以获取AVD运行的端口号。 简单,你所要做的:
获得模拟器
最后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"/>
输出:
如果有人使用Em。 M API 23那么权限问题就在那里..所以你必须添加运行时权限 – 2016-02-10 15:52:53
我想测试我的应用程序可以发送短信。所以从控制台做它不会工作.. :) – 2013-05-05 07:31:33
编辑答案。试试吧,为我工作。如果您的短信功能正常,那么您应该可以复制我的结果。 – MarsAtomic 2013-05-05 08:06:03
模拟器的东西没有工作,但在真实的设备上测试和工作:) – 2013-05-06 11:42:50