Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/316.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
Java 信号R本机Android应用协商失败_Java_C#_Android_Asp.net Mvc_Signalr - Fatal编程技术网

Java 信号R本机Android应用协商失败

Java 信号R本机Android应用协商失败,java,c#,android,asp.net-mvc,signalr,Java,C#,Android,Asp.net Mvc,Signalr,我正在尝试创建一个android应用程序,可以连接到我的基本信号中心 这只是一个基本的集线器文件,我想用它来测试一些东西,但到目前为止我运气不好。有人能看看我做错了什么吗?每次我尝试运行它时,我都会遇到以下stackraces: 05-27 09:10:39.785 22247-22247/nl.vict.chatapp I/art﹕ Rejecting re-init on previously-failed class java.lang.Class<microsoft.aspnet

我正在尝试创建一个android应用程序,可以连接到我的基本信号中心

这只是一个基本的集线器文件,我想用它来测试一些东西,但到目前为止我运气不好。有人能看看我做错了什么吗?每次我尝试运行它时,我都会遇到以下stackraces:

05-27 09:10:39.785  22247-22247/nl.vict.chatapp I/art﹕ Rejecting re-init on previously-failed class java.lang.Class<microsoft.aspnet.signalr.client.transport.WebsocketTransport$1>
05-27 09:10:39.785  22247-22247/nl.vict.chatapp I/art﹕ Rejecting re-init on previously-failed class java.lang.Class<microsoft.aspnet.signalr.client.transport.WebsocketTransport$1>
05-27 09:10:39.829  22247-22266/nl.vict.chatapp I/art﹕ Rejecting re-init on previously-failed class java.lang.Class<microsoft.aspnet.signalr.client.transport.WebsocketTransport$1>
05-27 09:10:39.830  22247-22247/nl.vict.chatapp W/System.err﹕ java.util.concurrent.ExecutionException: microsoft.aspnet.signalr.client.transport.NegotiationException: There was a problem in the negotiation with the server
05-27 09:10:39.830  22247-22247/nl.vict.chatapp W/System.err﹕ at microsoft.aspnet.signalr.client.SignalRFuture.get(SignalRFuture.java:112)
05-27 09:10:39.830  22247-22247/nl.vict.chatapp W/System.err﹕ at microsoft.aspnet.signalr.client.SignalRFuture.get(SignalRFuture.java:102)
05-27 09:10:39.830  22247-22247/nl.vict.chatapp W/System.err﹕ at nl.vict.chatapp.MainActivity.onCreate(MainActivity.java:48)
05-27 09:10:39.831  22247-22247/nl.vict.chatapp W/System.err﹕ at android.app.Activity.performCreate(Activity.java:5937)
05-27 09:10:39.831  22247-22247/nl.vict.chatapp W/System.err﹕ at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1105)
05-27 09:10:39.832  22247-22247/nl.vict.chatapp W/System.err﹕ at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2251)
05-27 09:10:39.832  22247-22247/nl.vict.chatapp W/System.err﹕ at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2360)
05-27 09:10:39.832  22247-22247/nl.vict.chatapp W/System.err﹕ at android.app.ActivityThread.access$800(ActivityThread.java:144)
05-27 09:10:39.833  22247-22247/nl.vict.chatapp W/System.err﹕ at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1278)
05-27 09:10:39.833  22247-22247/nl.vict.chatapp W/System.err﹕ at android.os.Handler.dispatchMessage(Handler.java:102)
05-27 09:10:39.833  22247-22247/nl.vict.chatapp W/System.err﹕ at android.os.Looper.loop(Looper.java:135)
05-27 09:10:39.833  22247-22247/nl.vict.chatapp W/System.err﹕ at android.app.ActivityThread.main(ActivityThread.java:5221)
05-27 09:10:39.834  22247-22247/nl.vict.chatapp W/System.err﹕ at java.lang.reflect.Method.invoke(Native Method)
05-27 09:10:39.834  22247-22247/nl.vict.chatapp W/System.err﹕ at java.lang.reflect.Method.invoke(Method.java:372)
05-27 09:10:39.855  22247-22247/nl.vict.chatapp W/System.err﹕ at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
05-27 09:10:39.855  22247-22247/nl.vict.chatapp W/System.err﹕ at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
05-27 09:10:39.855  22247-22247/nl.vict.chatapp W/System.err﹕ Caused by: microsoft.aspnet.signalr.client.transport.NegotiationException: There was a problem in the negotiation with the server
05-27 09:10:39.855  22247-22247/nl.vict.chatapp W/System.err﹕ at microsoft.aspnet.signalr.client.transport.HttpClientTransport$1.onResponse(HttpClientTransport.java:86)
05-27 09:10:39.855  22247-22247/nl.vict.chatapp W/System.err﹕ at microsoft.aspnet.signalr.client.http.java.NetworkRunnable.run(NetworkRunnable.java:82)
05-27 09:10:39.855  22247-22247/nl.vict.chatapp W/System.err﹕ at java.lang.Thread.run(Thread.java:818)
05-27 09:10:39.855  22247-22247/nl.vict.chatapp W/System.err﹕ Caused by: java.lang.NoClassDefFoundError: microsoft.aspnet.signalr.client.transport.WebsocketTransport$1
05-27 09:10:39.855  22247-22247/nl.vict.chatapp W/System.err﹕ at microsoft.aspnet.signalr.client.transport.WebsocketTransport.start(WebsocketTransport.java:92)
05-27 09:10:39.855  22247-22247/nl.vict.chatapp W/System.err﹕ at microsoft.aspnet.signalr.client.transport.AutomaticTransport.resolveTransport(AutomaticTransport.java:89)
05-27 09:10:39.855  22247-22247/nl.vict.chatapp W/System.err﹕ at microsoft.aspnet.signalr.client.transport.AutomaticTransport.start(AutomaticTransport.java:143)
05-27 09:10:39.855  22247-22247/nl.vict.chatapp W/System.err﹕ at microsoft.aspnet.signalr.client.Connection.startTransport(Connection.java:673)
05-27 09:10:39.855  22247-22247/nl.vict.chatapp W/System.err﹕ at microsoft.aspnet.signalr.client.Connection.access$500(Connection.java:30)
05-27 09:10:39.855  22247-22247/nl.vict.chatapp W/System.err﹕ at microsoft.aspnet.signalr.client.Connection$3.run(Connection.java:373)
05-27 09:10:39.855  22247-22247/nl.vict.chatapp W/System.err﹕ at microsoft.aspnet.signalr.client.Connection$3.run(Connection.java:350)
05-27 09:10:39.855  22247-22247/nl.vict.chatapp W/System.err﹕ at microsoft.aspnet.signalr.client.SignalRFuture.setResult(SignalRFuture.java:73)
05-27 09:10:39.856  22247-22247/nl.vict.chatapp W/System.err﹕ at microsoft.aspnet.signalr.client.transport.HttpClientTransport$1.onResponse(HttpClientTransport.java:82)
05-27 09:10:39.856  22247-22247/nl.vict.chatapp W/System.err﹕ ... 2 more
主要活动(Android Studio)

ListView-ListView;
轮毂连接;
代理权;
@凌驾
创建时受保护的void(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
listView=(listView)findViewById(R.id.listView);
字符串[]值=新字符串[]{
“Testvalue1”,
“Testvalue2”,
“Testvalue3”
};
ArrayAdapter=新的ArrayAdapter(这个,android.R.layout.simple\u expandable\u list\u item\u 1,android.R.id.text1,值);
setAdapter(适配器);
连接=新的轮毂连接(“http://www.voffice.nl/chat");
proxy=connection.createhubbroxy(“chatHub”);
SignalRFuture awaitConnection=connection.start();
试一试{
等待连接。get();
}捕捉(中断异常e){
e、 printStackTrace();
}捕获(执行例外){
e、 printStackTrace();
}
}
提前感谢,

凯文

--

编辑:


我已检查服务器和WebSocket是否已启用。

经过几天的努力,我是如何让它工作的:

  • 下载并构建它

  • 下载

  • 将libs文件夹添加到signarclientsdk并放入
    java\uwebsocket.jar
    你以前建的
  • 在signalr client sdk/build.gradle中替换

    编译“org.java websocket:java websocket:1.3.1”

    与:

    编译文件('libs/java\u websocket.jar')

  • 转到此处并找到http://to-ws://url的修复程序,在代码中更改它

  • 构建signalr客户端并将其包含在项目中,您还必须包含在第一步中构建的
    java\u websocket.jar
    ,因此您的gradle文件如下所示:

    编译'client.signer.aspnet.microsoft.signer\u client\u sdk\u android:signer client sdk android版本:1.0。0@aar'
    编译文件('libs/signer client sdk.jar')
    编译文件('libs/java\u websocket.jar')

  • 不要将任何查询字符串传递给HubConnection,否则它将挂起


    如果您需要传递头(如授权令牌),您必须修复更多代码,这会有一个请求:

    您找到问题的解决方案了吗?我有一个类似的(或相同的)解决方案,您能解释一下为什么用TooTallNate的实现替换websockets实现吗?你能不能说你是否在android中实现了一个可接受的(即生产就绪的)稳定的实现?
    public class ChatHub : Hub
        {
            public void Send(string name, string message)
            {
                Clients.All.addNewMessageToPage(name, message);
            }
        }
    
    ListView listView;
        HubConnection connection;
        HubProxy proxy;
    
        @Override
        protected void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.activity_main);
    
            listView = (ListView)findViewById(R.id.listView);
    
            String[] values = new String[]{
                    "Testvalue1",
                    "Testvalue2",
                    "Testvalue3"
            };
    
            ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_expandable_list_item_1,android.R.id.text1,values);
    
            listView.setAdapter(adapter);
    
            connection = new HubConnection("http://www.voffice.nl/chat");
            proxy = connection.createHubProxy("chatHub");
            SignalRFuture<Void> awaitConnection = connection.start();
            try{
                awaitConnection.get();
            }catch (InterruptedException e){
                e.printStackTrace();
            }catch (ExecutionException e){
                e.printStackTrace();
            }
    
    
    
        }