Xamarin android C#grpc客户端无法创建频道

时间:2020-08-06 10:30:46

标签: c# android xamarin xamarin.android grpc

我正在net471 wpf应用程序中使用gprc,它工作正常。我想使用相同的方式与xamarin android应用程序进行通信。 因此,将原型文件保存在一个通用项目(使用netstandard2.0的便携式类库)中,以在WPF和android项目中引用相同的原型和生成的类。 从net471项目托管服务器,并尝试在xamarin android项目中创建客户端,从而能够实施和构建所有内容。但是,当尝试运行android应用并使用Grpc.Core.Channel创建grpc客户端时,出现以下错误:

{System.DllNotFoundException:grpc_csharp_ext程序集:类型:成员:(null)at(包装器托管到本地)Grpc.Core.Internal.NativeMethods + DllImportsFromSharedLib.grpcsharp_redirect_log(Grpc.Core.Internal.GprLogDelegate)在Grpc。 T. \ src \ github \ grpc \ src \ csharp \ Grpc.Core \ Internal \ NativeLogRedirector.cs:49中的Core.Internal.NativeLogRedirector.Redirect(Grpc.Core.Internal.NativeMethods本机)[0x00028],位于Grpc.Core。 T:\ src \ github \ grpc \ src \ csharp \ Grpc.Core \ Internal \ NativeExtension.cs:44中的Internal.NativeExtension..ctor()[0x00011]在Grpc.Core.Internal.NativeExtension.Get()[0x00022 ]:在T:\ src \ github \ grpc的T:\ src \ github \ grpc \ src \ csharp \ Grpc.Core \ Internal \ NativeExtension.cs:65 at Grpc.Core.Internal.NativeMethods.Get()[0x00000] \ src \ csharp \ Grpc.Core \ Internal \ NativeMethods.cs:49在Grpc.Core.GrpcEnvironment.GrpcNativeInit()在T:\ src \ github \ grpc \ src \ csharp \ Grpc.Core \ GrpcEnvironment.cs中的[0x00016] :373 at Grpc.Core.GrpcEnvironment..ctor()[0x0001e]在T:\ src \ github \ grpc \ src \位于Grpc.Core.GrpcEnvironment.AddRef()处的csharp \ Grpc.Core \ GrpcEnvironment.cs:302 [0x00028]位于Grpc处的T:\ src \ github \ grpc \ src \ csharp \ Grpc.Core \ GrpcEnvironment.cs:78中。 T. \ src \ github \ grpc \ src \ csharp \中的Core.Channel.ctor(System.String目标,Grpc.Core.ChannelCredentials凭据,System.Collections.Generic.IEnumerable`1 [T]选项)[0x00041] T:\ src \ github \ grpc \ src \ csharp \ Grpc中的Grpc.Core.Channel.ctor(System.String目标,Grpc.Core.ChannelCredentials凭据)[0x00000]处的Grpc.Core \ Channel.cs:70。 C:\ ActiveDev \ Act \ RecordingSystems \ VideoRecorder \ aiVRR.Mobile \ aiVRR.MobileApp.Android \ Helpers \ ServiceClient中的aVRR.MobileApp.Android.Helpers.ServiceClient.Connect()上的Core \ Channel.cs:55 [0x00002]。 cs:78}

我也曾尝试通过构建后事件将此grpc_cshar_ext.dll复制到.. \ obj \ Debug \ 90 \ android,但仍然出现相同的错误。有任何线索吗?

0 个答案:

没有答案