如何在Android中使用SCTP协议?
我已经知道Android系统默认不支持SCTP,但是可以通过插入SCTP内核模块来启用它,或者在模块配置中重新构建启用SCTP的内核。
我需要一些关于这个问题的见解。这可能吗?如何使android支持该协议?如何构建内核模块并正确插入?如果我们可以成功地使系统支持它,我们如何使用协议?android上的Java API支持SCTP吗?
使用模块是正确的方法。回答您的问题:
-
SCTP已经作为Linux源代码树中的内核模块提供了-"CONFIG_IP_SCTP=m"将启用该模块。您可以将其更改为"y"到硬链接,尽管这可能是不可行的,因为您必须为此重新构建整个内核。
-
模块仍然必须在每个内核版本中构建。所以基本上每个供应商,你需要得到他们的内核源代码(可行的),然后编译你的模块针对它。
From Java -实际上在其最新版本(JDK7作为里程碑3)中支持该协议,但Java支持它并不意味着Dalvik (Android的"Java vm")支持它。虽然Android已经"准备好"支持SCTP,但Dalvik中还没有(至少在4.2中没有)。不过,您可以像在包中一样创建一个Java类,用SCTP调用包装一个本机库。这在Android中有点棘手,因为有。NET权限,但仍然可以管理(从经验来看)。