Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/220.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
适用于Android的JAIN-SIP 1.2:缺少javax.SIP.STACK\u NAME属性_Android_Sip_Jain Sip_Jarjar - Fatal编程技术网

适用于Android的JAIN-SIP 1.2:缺少javax.SIP.STACK\u NAME属性

适用于Android的JAIN-SIP 1.2:缺少javax.SIP.STACK\u NAME属性,android,sip,jain-sip,jarjar,Android,Sip,Jain Sip,Jarjar,我正在尝试在Android设备(4.0.2)上运行JAIN-SIP堆栈。 我能够重新打包所需的jar文件(jain-sip-api-1.2-src.jar、jain-sip-src-1.2.1111.jar、concurrent.jar、log4j-1.2.8.jar) 这是我使用的build.xml文件: <!-- Converts this project's .class files into .dex files --> <target name="-jar

我正在尝试在Android设备(4.0.2)上运行JAIN-SIP堆栈。 我能够重新打包所需的jar文件(jain-sip-api-1.2-src.jar、jain-sip-src-1.2.1111.jar、concurrent.jar、log4j-1.2.8.jar)

这是我使用的build.xml文件:

    <!-- Converts this project's .class files into .dex files -->
  <target name="-jarjar" depends="-compile"> 
        <taskdef name="jarjar" classname="com.tonicsystems.jarjar.JarJarTask"
                 classpath="buildtools/jarjar-1.4.jar"/>
        <jarjar jarfile="${out.absolute.dir}/JainSipApi1.2_re.jar">
            <zipgroupfileset dir="mylib" includes="jain-sip-api-1.2-src.jar" />
            <rule pattern="javax.sip.**" result="sipper.sip.@1"/>
        </jarjar>
         <jarjar jarfile="${out.absolute.dir}/JainSipRi1.2_re.jar">
            <zipgroupfileset dir="mylib" includes="jain-sip-src-1.2.1111.jar" />
            <rule pattern="gov.nist.**" result="sipper.nist.@1"/>
        </jarjar>
         <jarjar jarfile="${out.absolute.dir}/concurrent_re.jar">
            <zipgroupfileset dir="mylib" includes="concurrent.jar" />
            <rule pattern="EDU.**" result="sipper.EDU.@1"/>
        </jarjar>
         <jarjar jarfile="${out.absolute.dir}/log4j-1.2.8_re.jar">
            <zipgroupfileset dir="mylib" includes="log4j-1.2.8.jar" />
            <rule pattern="org.apache.log4j.**" result="sipper.org.apache.log4j.@1"/>
        </jarjar>
     </target>
当我尝试运行此代码时,出现以下错误:

 Problem initializing the SIP stack.

sipper.sip.PeerUnavailableException: Missing javax.sip.STACK_NAME property
    at sipper.sip.SipFactory.createSipStack(SipFactory.java:144)
    at SipLayer.<init>(SipLayer.java:86)
    at SipperClient.main(SipperClient.java:51)
现在我的问题是,有没有合适的方法/解决方案让JAIN-SIP在Android下工作

提前感谢您的帮助:-)


丹尼尔

我刚刚看到这篇文章,遇到了同样的问题

几分钟后,我成功地将jain sip堆栈移植到Nexus 7 Android 4.1

问题的主要原因是“Jar”包名。 由于Android不支持从包名“javax.*”导入库, 将jsip移植到Android平台的第一项工作是更改导入包的名称

您已经使用以下脚本将其中一个包名javax.sip更改为sipper.sip

<rule pattern="javax.sip.**" result="sipper.sip.@1"/>
因此jsip只需找到属性即可获得sip堆栈名。 最后,这个问题的答案。 请在jsip应用程序中添加这些代码

Properties properties = new Properties();
properties.setProperty("sipper.sip.STACK_NAME", "stack");

希望这可以帮助你和观众从互联网上

我刚刚看到这篇文章,遇到了同样的问题

几分钟后,我成功地将jain sip堆栈移植到Nexus 7 Android 4.1

问题的主要原因是“Jar”包名。 由于Android不支持从包名“javax.*”导入库, 将jsip移植到Android平台的第一项工作是更改导入包的名称

您已经使用以下脚本将其中一个包名javax.sip更改为sipper.sip

<rule pattern="javax.sip.**" result="sipper.sip.@1"/>
因此jsip只需找到属性即可获得sip堆栈名。 最后,这个问题的答案。 请在jsip应用程序中添加这些代码

Properties properties = new Properties();
properties.setProperty("sipper.sip.STACK_NAME", "stack");

希望这可以帮助你和观众从互联网上

现在有一个受JAIN SIP支持的Android端口,由编写大部分原始JAIN SIP堆栈的人提供:


现在,编写大部分原始JAIN SIP堆栈的人都支持Android端口的JAIN SIP:

Properties properties = new Properties();
properties.setProperty("sipper.sip.STACK_NAME", "stack");