【发布时间】:2016-08-04 07:36:48
【问题描述】:
我需要测量 Android 设备中 SMS 的发送速度。我正在考虑以下方法。请让我知道它是否正确,或者是否有更好的解决方案。
计算发送 10 条消息所花费的时间,并计算发送每条消息所花费的平均时间。但是这里的速度量在哪里?字符数会增加花费的时间吗?
这是我写的代码。
SmsManager smsManager = SmsManager.getDefault();
long startTime = System.currentTimeMillis();
smsManager.sendTextMessage("1234567890",null,text,null,null);
smsManager.sendTextMessage("1234567890",null,text,null,null);
smsManager.sendTextMessage("1234567890",null,text,null,null);
smsManager.sendTextMessage("1234567890",null,text,null,null);
smsManager.sendTextMessage("1234567890",null,text,null,null);
smsManager.sendTextMessage("1234567890",null,text,null,null);
smsManager.sendTextMessage("1234567890",null,text,null,null);
smsManager.sendTextMessage("1234567890",null,text,null,null);
smsManager.sendTextMessage("1234567890",null,text,null,null);
long endTime = System.currentTimeMillis();
long result = endTime - startTime;
result 是 742 毫秒,但我怀疑这是正确的。也就是说每条短信只需要74毫秒。
【问题讨论】:
-
只是为了好奇,74ms有什么问题?是不是太长了?
-
当我尝试使用设备发送短信时,发送大约需要 1.5 秒。
-
你假设调用是同步的,我非常怀疑。最可能的 74ms 只是用于将 SMS 在传出队列中排队,而不是实际与最近的基站建立无线电链路并发送消息。
标签: android