Android studio Android Studio在添加jar库后仍无法将应用程序安装到设备上

Android studio Android Studio在添加jar库后仍无法将应用程序安装到设备上,android-studio,signalr-client,Android Studio,Signalr Client,我正在用Android设置一个信号器客户端。我正在使用Android Studio 3.3和Gradle v3.0.1 我在项目中使用了两个不推荐使用的jar库。 -signalr-client-sdk.jar -signalr-client-sdk-android.jar 将这两个jar依赖项添加到project之后,问题就开始了。 在添加jarlibs之后,androidstudio开始在设备上安装应用程序 我在我朋友的PC上的另一个项目中也做了同样的事情,而且效果很好。我不知道这有什么问题

我正在用Android设置一个信号器客户端。我正在使用Android Studio 3.3和Gradle v3.0.1

我在项目中使用了两个不推荐使用的jar库。 -signalr-client-sdk.jar -signalr-client-sdk-android.jar

将这两个jar依赖项添加到project之后,问题就开始了。 在添加jarlibs之后,androidstudio开始在设备上安装应用程序

我在我朋友的PC上的另一个项目中也做了同样的事情,而且效果很好。我不知道这有什么问题

=====

更新 我试过用其他设备。。。我安装了GenyMotion Emulator并创建了几种虚拟机。 Android Studio将在api级别为16的虚拟机上安装该应用程序,但当尝试在api级别为27(8.1)的虚拟机上安装时,它再次卡住了

截图:

  • 我可以生成已签名的apk并在手机上安装。但无法直接从Android studio安装

更新

将以下行添加到应用程序模块的build.gradle中:

splits {
        abi {
            enable true
            reset()
            include 'x86', 'x86_64', 'armeabi', 'armeabi-v7a', 'mips', 'mips64', 'arm64-v8a'
            universalApk true
        }
    }

    packagingOptions {
        exclude 'lib/getLibs.ps1'
        exclude 'lib/getLibs.sh'
        exclude 'lib/gson-2.2.2.jar'
    }
旧答案

尝试以下步骤:

第一步:将此依赖项添加到构建中。gradle:

implementation 'com.microsoft.signalr:signalr:1.0.0'
第二步:在活动中添加以下行:

private final String serverUrl = "put your server url";
private HubConnection hubConnection;

hubConnection = HubConnectionBuilder.create(serverUrl).build();

        if (hubConnection.getConnectionState() == HubConnectionState.DISCONNECTED)
            hubConnection.start();

        if (hubConnection.getConnectionState() == HubConnectionState.CONNECTED)
            hubConnection.send("your method name at server", your arguments);
        else if (hubConnection.getConnectionState() == HubConnectionState.DISCONNECTED) 
            hubConnection.start();

正如您在上面看到的,您不需要在项目中添加两个signer不推荐使用的jar库。

更新

将以下行添加到应用程序模块的build.gradle中:

splits {
        abi {
            enable true
            reset()
            include 'x86', 'x86_64', 'armeabi', 'armeabi-v7a', 'mips', 'mips64', 'arm64-v8a'
            universalApk true
        }
    }

    packagingOptions {
        exclude 'lib/getLibs.ps1'
        exclude 'lib/getLibs.sh'
        exclude 'lib/gson-2.2.2.jar'
    }
旧答案

尝试以下步骤:

第一步:将此依赖项添加到构建中。gradle:

implementation 'com.microsoft.signalr:signalr:1.0.0'
第二步:在活动中添加以下行:

private final String serverUrl = "put your server url";
private HubConnection hubConnection;

hubConnection = HubConnectionBuilder.create(serverUrl).build();

        if (hubConnection.getConnectionState() == HubConnectionState.DISCONNECTED)
            hubConnection.start();

        if (hubConnection.getConnectionState() == HubConnectionState.CONNECTED)
            hubConnection.send("your method name at server", your arguments);
        else if (hubConnection.getConnectionState() == HubConnectionState.DISCONNECTED) 
            hubConnection.start();

正如您在上面所看到的,您不需要在项目中添加两个Signar弃用的jar库。

正如我所知,此依赖项适用于Asp.net核心服务器,对吗?我在ASP.net MVCI中实现了我的中心,在我的问题中添加了一个屏幕截图,可能是一条线索?@S.Hoseinpoor,或者我正在更新我的答案。请看我的答案。我知道这个依赖项是用于Asp.net核心服务器的,对吗?我在ASP.net MVCI中实现了我的中心,在我的问题中添加了一个屏幕截图,可能是一条线索?@S.Hoseinpoor,或者我正在更新我的答案。请看我的答案。