java - Java ME 中的二进制消息有多可靠

标签 java java-me

我要为 Java ME 平台开发一个移动应用程序,用于发送包含二进制数据的 SMS 消息。但是,该应用程序将使用自定义端口来发送这些消息(以便它可以自行注册并自动接收这些消息,而不是手机的标准消息系统)。

我的问题是:

1) 自定义端口的 BinaryMessages 是否在全局移动网络中得到广泛支持?或者这是只适用于少数电信运营商的“奢侈”东西?

2) 当文本超过单个消息的限制时,普通 TextMessages 往往会被分解成多个部分。 BinaryMessages 是否以相同的方式处理?如果是,我如何在我的应用程序中处理这个问题(碎片化)?显然,消息的一部分将无法完成工作,理想情况下,我希望在收到消息的所有部分后获得完整的消息。这取决于运营商网络吗?

我意识到我可以对此进行测试,但我无法在很多电信设备上运行测试,只有在我的(小)国家/地区的那些电信设备,这对于是否应该开发此应用程序至关重要。

我试着自己寻找答案,但我失败了。很抱歉,如果这些是微不足道的问题,谢谢你抽出时间。

最佳答案

我看不出这个问题有什么问题。不过,我只能提供半答案。

诚然,是否要让所有端口保持打开状态取决于各个网络提供商。因此,您不能假设总是可以发送/接收文本消息或二进制消息。 然而,很久以前另一位 JavaME 开发人员告诉我,他们关闭端口是非常不寻常的。 (许多其他协议(protocol)(如套接字和 http 等)使用的端口不是相同的吗?如果是,那么它们肯定始终处于打开状态。关闭它们没有任何意义)。

如果我是您,我会添加一些代码来检查消息是否已发送,然后在发送失败时向用户输出一些错误消息。 (如果可能,还可以调用一些 URL 作为向您报告错误的方式)。

关于分解消息,这是一个很好的问题。我不知道。我会进行一些实际设备测试以找出答案。

关于java - Java ME 中的二进制消息有多可靠,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13057750/

相关文章:

java - Android MD5 问题计算 MD5,缺少字符

java - J2ME : lock the device programmatically

java - 代码优化: Sum integer values for specific string,

java - j2me - 比较 2 个日期

java - Spring @Value 到数据结构

java - 如何使用java从特定文件中获取所有姓名和出生日期

java - 如何使 GetLastError 可靠地与 JNA 一起工作?

java - spring boot从1.3.5更新到1.5.17后找不到log4j库

blackberry - 使用视频控制在黑莓应用程序中捕获图片仅适用于模拟器,不适用于设备

java-me - LWUIT显示粗体文本+普通文本