Baidu プッシュ サービスを使用する Android アプリを実装しています。Baidu SDK のバージョンは50です(jar lib はpushservice-5.0.0.66.jar です)。現在、奇妙な動作が見られます: onBind で成功の応答が得られます (そのため、Baidu トークンを受け取ります)。しかし、Wifi データを使用すると、アプリは Baidu 用のソケットを作成しません。
Baidu のデバッグ モードを有効にすると、次のエラーが表示されます。
com....:bdservice_v1 E/BDPushSDK-PushConnection: Create socket err, errno: 2socketfd: -1
com....:bdservice_v1 I/BDPushSDK-PushConnection: disconnectedByPeer, mStoped == false
com....:bdservice_v1 I/BDPushSDK-PushConnection: destroy
com....:bdservice_v1 I/BDPushSDK-PushConnection: Schedule retry-- retry times: 2 time delay: 30000*
これらすべてのエラーに関する情報を見つけるのは困難です (これはすべて中国語のようです)。しかし、エラー 2 は、「そのようなファイルまたはディレクトリはありません」のように言っているようです。また、エラー110「接続がタイムアウトしました」という前に取得していました。したがって、これはあまり役に立ちません。
しかし、問題は、セルラーデータを使用するとすべてが機能することです. 多くのユーザーが WiFi について同じ問題を報告しているため、ネットワークのローカル設定のようには見えません。
com....:bdservice_v1 D/BDPushSDK-PushConnection: create Socket ok
com....:bdservice_v1 D/BDPushSDK-PushSDK: heartbeat set : 180 secs