BranchSDK:用户会话尚未初始化
BranchSDK: User session has not been initialized
我的 BranchSDK 有问题,在初始化期间我收到错误:
12-28 13:50:22.203 D/FirebasePerformance:记录 NetworkRequestMetric - <a href="https://api2.branch.io/v1/install" rel="nofollow noreferrer">https://api2.branch.io/v1/install</a> 0b 1136ms,
12-28 13:50:22.204 I/FirebasePerformance: 没有收到 HTTP 响应代码
12-28 13:50:22.204 W/FirebasePerformance:由于值缺失或无效,无法处理 PerfMetric。有关特定 missing/invalid 值的更多信息,请参阅之前的日志语句。
12-28 13:50:22.208 E/BranchNetworkClient: doRestfulGet(<a href="https://api2.branch.io/v1/install" rel="nofollow noreferrer">https://api2.branch.io/v1/install</a>) 出错
javax.net.ssl.SSLHandshakeException: javax.net.ssl.SSLProtocolException: SSL 握手中止: ssl=0x63395a88: SSL 库失败,通常是协议错误
error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 警报握手失败 (external/openssl/ssl/s23_clnt.c:744 0x5d9ce808:0x00000000)
在 com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:449)
在 okhttp3.internal.connection.RealConnection.connectTls(RealConnection.java:318)
在 okhttp3.internal.connection.RealConnection.establishProtocol(RealConnection.java:282)
在 okhttp3.internal.connection.RealConnection.connect(RealConnection.java:167)
在 okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:257)
在 okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:135)
在 okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:114)
在 okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42)
在 okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
在 okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
在 okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:93)
在 okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
在 okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
在 okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
在 okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
在 okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:126)
在 okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
在 okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
在 okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:200)
在 okhttp3.RealCall.execute(RealCall.java:77)
在 com.google.firebase.perf.network.FirebasePerfOkHttpClient.execute(来源不明)
在 com.riversoft.eventssion.network.BranchNetworkClient.doRestfulPost(BranchNetworkClient.java:59)
在 io.branch.referral.network.BranchRemoteInterface.make_restful_post(BranchRemoteInterface.java:136)
在 io.branch.referral.Branch$BranchPostTask.doInBackground(Branch.java:2860)
在 io.branch.referral.Branch$BranchPostTask.doInBackground(Branch.java:2835)
在 android.os.AsyncTask$2.call(AsyncTask.java:288)
在 java.util.concurrent.FutureTask.run(FutureTask.java:237)
在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
在 java.lang.Thread.run(Thread.java:841)
Caused by: javax.net.ssl.SSLProtocolException: SSL handshake aborted: ssl=0x63395a88: Failure in SSL library, 通常是协议错误
error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 警报握手失败 (external/openssl/ssl/s23_clnt.c:744 0x5d9ce808:0x00000000)
在 com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(本机方法)
在 com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:406)
... 还有 29 个
我试过:
https://github.com/BranchMetrics/android-branch-deep-linking/issues/552
和:
ConnectionSpec spec = new
ConnectionSpec.Builder(ConnectionSpec.MODERN_TLS)
.tlsVersions(TlsVersion.TLS_1_2)
.cipherSuites(
CipherSuite.TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,
CipherSuite.TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,
CipherSuite.TLS_DHE_RSA_WITH_AES_128_GCM_SHA256)
.build();
OkHttpClient client = new OkHttpClient.Builder()
.connectionSpecs(Collections.singletonList(spec))
.build();
P.S。这是 API19 上的问题,但 API 28、27、25、23 一切正常。
能否确认一下您使用的SDK版本?由于我们最新的 SDK 版本有一些与 TLS 相关的更改。
请参考:https://github.com/BranchMetrics/android-branch-deep-linking/releases
版本 3.0.0 有一些与 TLS 相关的地方 changes.Please 如果问题仍然存在,请更新 Branch SDK 并写信给 integrations@branch.io。
谢谢。
对于3.0.3及以下版本,帮我在初始化BranchSDK时只加了一个字符串:ProviderInstaller.installIfNeeded(context);
我的 BranchSDK 有问题,在初始化期间我收到错误:
12-28 13:50:22.203 D/FirebasePerformance:记录 NetworkRequestMetric - <a href="https://api2.branch.io/v1/install" rel="nofollow noreferrer">https://api2.branch.io/v1/install</a> 0b 1136ms,
12-28 13:50:22.204 I/FirebasePerformance: 没有收到 HTTP 响应代码
12-28 13:50:22.204 W/FirebasePerformance:由于值缺失或无效,无法处理 PerfMetric。有关特定 missing/invalid 值的更多信息,请参阅之前的日志语句。
12-28 13:50:22.208 E/BranchNetworkClient: doRestfulGet(<a href="https://api2.branch.io/v1/install" rel="nofollow noreferrer">https://api2.branch.io/v1/install</a>) 出错
javax.net.ssl.SSLHandshakeException: javax.net.ssl.SSLProtocolException: SSL 握手中止: ssl=0x63395a88: SSL 库失败,通常是协议错误
error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 警报握手失败 (external/openssl/ssl/s23_clnt.c:744 0x5d9ce808:0x00000000)
在 com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:449)
在 okhttp3.internal.connection.RealConnection.connectTls(RealConnection.java:318)
在 okhttp3.internal.connection.RealConnection.establishProtocol(RealConnection.java:282)
在 okhttp3.internal.connection.RealConnection.connect(RealConnection.java:167)
在 okhttp3.internal.connection.StreamAllocation.findConnection(StreamAllocation.java:257)
在 okhttp3.internal.connection.StreamAllocation.findHealthyConnection(StreamAllocation.java:135)
在 okhttp3.internal.connection.StreamAllocation.newStream(StreamAllocation.java:114)
在 okhttp3.internal.connection.ConnectInterceptor.intercept(ConnectInterceptor.java:42)
在 okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
在 okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
在 okhttp3.internal.cache.CacheInterceptor.intercept(CacheInterceptor.java:93)
在 okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
在 okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
在 okhttp3.internal.http.BridgeInterceptor.intercept(BridgeInterceptor.java:93)
在 okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
在 okhttp3.internal.http.RetryAndFollowUpInterceptor.intercept(RetryAndFollowUpInterceptor.java:126)
在 okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:147)
在 okhttp3.internal.http.RealInterceptorChain.proceed(RealInterceptorChain.java:121)
在 okhttp3.RealCall.getResponseWithInterceptorChain(RealCall.java:200)
在 okhttp3.RealCall.execute(RealCall.java:77)
在 com.google.firebase.perf.network.FirebasePerfOkHttpClient.execute(来源不明)
在 com.riversoft.eventssion.network.BranchNetworkClient.doRestfulPost(BranchNetworkClient.java:59)
在 io.branch.referral.network.BranchRemoteInterface.make_restful_post(BranchRemoteInterface.java:136)
在 io.branch.referral.Branch$BranchPostTask.doInBackground(Branch.java:2860)
在 io.branch.referral.Branch$BranchPostTask.doInBackground(Branch.java:2835)
在 android.os.AsyncTask$2.call(AsyncTask.java:288)
在 java.util.concurrent.FutureTask.run(FutureTask.java:237)
在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
在 java.lang.Thread.run(Thread.java:841)
Caused by: javax.net.ssl.SSLProtocolException: SSL handshake aborted: ssl=0x63395a88: Failure in SSL library, 通常是协议错误
error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 警报握手失败 (external/openssl/ssl/s23_clnt.c:744 0x5d9ce808:0x00000000)
在 com.android.org.conscrypt.NativeCrypto.SSL_do_handshake(本机方法)
在 com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:406)
... 还有 29 个
我试过: https://github.com/BranchMetrics/android-branch-deep-linking/issues/552 和:
ConnectionSpec spec = new
ConnectionSpec.Builder(ConnectionSpec.MODERN_TLS)
.tlsVersions(TlsVersion.TLS_1_2)
.cipherSuites(
CipherSuite.TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,
CipherSuite.TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,
CipherSuite.TLS_DHE_RSA_WITH_AES_128_GCM_SHA256)
.build();
OkHttpClient client = new OkHttpClient.Builder()
.connectionSpecs(Collections.singletonList(spec))
.build();
P.S。这是 API19 上的问题,但 API 28、27、25、23 一切正常。
能否确认一下您使用的SDK版本?由于我们最新的 SDK 版本有一些与 TLS 相关的更改。
请参考:https://github.com/BranchMetrics/android-branch-deep-linking/releases
版本 3.0.0 有一些与 TLS 相关的地方 changes.Please 如果问题仍然存在,请更新 Branch SDK 并写信给 integrations@branch.io。
谢谢。
对于3.0.3及以下版本,帮我在初始化BranchSDK时只加了一个字符串:ProviderInstaller.installIfNeeded(context);