Я пытаюсь привести SignalR в проект Android Studio.
Я успешно выполнил учебник по начинающему с SignalR, так что теперь у меня есть рабочий Hub
. Клиент в этом учебнике - это javascript, и я получил его нормально на веб-странице (в Chrome) на ПК и на моем Android-телефоне через Wi-Fi в моей домашней локальной сети.
Затем я пошел, чтобы работать с java-клиентом Android. У меня уже был проект приложения Android в Android Studio, в котором я хочу поговорить с тем, что работает Hub
как тест, в качестве следующего шага.
Я загрузил официальный Microsoft java-клиент для Android в качестве почтового индекса.
Затем я извлек его и загрузил его как проект в Android Studio. Он строит без ошибок.
Проблема №1: Этот проект дает мне AAR, а не JAR. Я выяснил, как использовать банку в Android Studio, поэтому, если есть способ создать банку на этом этапе, я, вероятно, смогу сделать эту работу.
В этот момент я включил зависимости в свой проект приложения. Readme.md говорит:
Добавьте signalr-client-sdk.jar, signalr-client-sdk-android.jar gson библиотека как зависимость gradle от проекта.
поэтому я старался следовать этому как можно ближе. Здесь из моего build.gradle:
compile 'com.google.code.gson:gson:2.3.1'
compile files('libs/signalr-client-sdk.jar')
compile files('libs/signalr-client-sdk-android-release.aar')
Проблема № 2: импортировав aar в качестве модуля в проект приложения в Android Studio, он все еще не видит необходимого пространства имен, чтобы заставить основной оператор работать. Вот основной оператор (привет мир SignalR в Android, компилятор):
Platform.loadPlatformComponent(new AndroidPlatformComponent());
Сначала он ничего не собирал, затем взял import microsoft.aspnet.signalr.client.Platform;
для Platform
. Он все еще не имеет понятия, что import
для AndroidPlatformComponent
, поэтому я застреваю, пока не смогу пройти мимо этого.
Как вы знаете, в Android Studio есть много файлов, и я не хочу просто извергать их здесь, прежде чем я узнаю, какие файлы вы хотите видеть. Я добавлю их в качестве редактирования, если вы скажете мне, какие файлы вы хотите видеть.